Skip to main content

Full text of "68 Micro Journal Volume 11 Number 01"

See other formats


/«/»»» A $ 4.75 tow Ze-alant NZ S 650 
SrgafxxB g 59.45 Hong Kong H $23 50 
Malaysia US 945 Sweden 30SEK 



$2.95 



USA 



MICRO JOURTW. 



OS-9 Atari Amiga Mac S-50 

6900 6809 68008 69000 690 10 690Z0 69030 

The Magazine fax Motorola CtV Device* For Over a Decade! 
Tills Issue: ttfit 



»C M User Notes p.4 

Basically OS-9 p. 14 

Logically Speaking p.21 

FORTH p. 39 

Mac Watch p.43 



SK*D06 Atari knit* 
OS-3 FLEX Midniosh Alter Cmlritvlarjemet 



And Lois Morel 





The problem with most real-lime operating systems is 
simple, they're not an integrated solution. You end up dealing 
with a multitude of suppliers for languages, compilers, debug- 
gers and other important development tools. And when 
something does go wrong, it can be a frustrating experience 
liying to straighten out the mess. 

Why Not Try the 
Microware One-Stop 
Total Solution? 

Microware's OS-* Real-Time 
Operating System is a total inte- 
grated software system, not just 
a kernel. v\fe offer an extensive 
set of development tools, lan- 
guages, I/O and Kernel options. 
And this total integrated solution 
is entirely designed, built and 
supported by the same expert 
Microware team. 



M« mW.Mr t\ J tl-ttlslv+J it If .MlllT.Ilk I >l 

Mm rnw.tfc Syyi^m ( on**Mum 
OS.V id .1 U^kviwrk td Mk KfWjri' 
UNIX c d luikinjik u* Al & I 
VAX ».| luckmilk cl IK( 



The OS-9 Success Kit 


A Total Integtated Solution for Your Next Project 


Development Took: 


Languages: 


C Source level Debugger 


c- 


Symbolic Debugger 


Baslc 


System Stale Debugger 


Pascal 


uMACS Tail Editor 


Fortran 


Electronic Mall 


Ada" 


Communlcallons 


Assembler' 


Super Shell 




Kernel Options: 


I/O Options: 

SCSI. SASI&SMO Disks 


MMU (Security Protection) Support 


J-. S-, 8-inch Diskettes 


Matt Coprocessor Suppori 


Magnetic Tape 


•RKrtailm UNIX vestem available 


EtnemetTCP/IP 


"VAX hostel) 


Atcnet- OS-9 'Net 



Modularity Lets YOU Choose Just What You Need. 

The modular design of OS-9 allows our Operalihg System 
to adapt as your requirements change. OS-9 can suppart a 
complete spectrum of applications — from embedded ROM- 
hased code in board-level products all the way up to large 
scale systems. 

Support is Part 
of the Package. 

Microware is proudly selling 
the indusiry's standard for cus- 
tomer support. You'll find pro- 
fessional and comprehensive 
technical documentation and a 
Customer Hotline staffed by 
courteous and authoritative soft- 
ware engineers. 

So stop messing with sim- 
ple kernels and independent 
su|>pliers. Call Microware today 
and find out mare about the 
'One-Stop Integrated Solution" 
with OS-9! 



— ThMowm^ OS-9 



Microware Systems Corporation 

I90UN.W. 114th Street 
Dt-s Moines, Iowa 50322 
Phone: 515/224- 192V 



Western Regional Office 
4401 Creat America Parkway 
Santa Clara, California 95054 
Phone: 408/980-0201 



Microware Japan Ltd. 

41-19 Honcho 4-Chome 
Funabashi City 
Chiba 273, Japan 
Phone: 0474 (22) 1747 



MtuUng-020 MusUng-08 Benchmark* J2t.ii 

bKflar 

IBM AT JVM Xmb Syi J 9.7 

ATftTTJOOlTNlXPCMOlO 7-2 

D6C VAX lima UNIX B«A1«7 4.2 3 6 

06CVAX11/W0 ' ' J.l 

6SOOBOS.9 UK I Mhi 11.0 

08000 03-1 UK 10 Mb tl 

MVSTANC-U6UM OS.} UK It Mk >-» 

MVSTANC statute »S-» UK I* WU IJ 

MUSTtMC-tUiKMMCttStl VmtfLSX ISMkt I J 






Ulmud MIPS- M1JCTANC.4J. 4J MIPS, 

Bur* la » . It MIPS: Motorola Sn 



1/MUi 



4,3 
3.2 
3.2 
9.0 
4i) 
«J 
«j« 



OS-9 



OS-9 PwfcM*aul V« 


SASO.00 


*frr)*. to C C"t-W 




ftssfctt 


300 m 


C Qropilc? 


MO .00 


68000 Di**D*tct («/«•» nU: Si 00.00) 


ioojjo 


Punnm Tt 


750,00 


Mtov»t*c.*>cal 


300.00 


OwefSMft hml 


900 xn 


Jfyjo-Grxjfc 


493.00 


Styli^poU 


19JXD 


StyVMtBp; 


175.00 


Sl><i?<b»(*-5poi»Mwifl 


6934X1 


PAT ȣ sown 


229 XC 


JUST »/C fains 


793J 


PAT/IUSTOm*«> 


249.30 


Sc*)p*a* (ne telow) 


993 .X 


COM 


123.00 


UnllTEX 




t/iikFLEX(6B02Qv«T) 


MSOXW 


Satxi) KdAos 


130X10 


Sort-Mwes 


200 SO 


BAJOPM~4*mjile« 


300 .00 


C r<iiwiii« 


350.00 


COBOL 


750.00 


CMODFAi wAvura 


100 00 


TMODEM Varam 


100 00 


X-TALK(b>A4) 


9»5 


OmAanDbla 


50100 


PotviT) 


450 XU 


Vni>4i»* (Me brio*) 


995 .00 


Suzalorl MUSTANG^M™ lalRied 12J Mhx. 




Add to 16.6 MM 6S020 


373.00 


Add r<z 16.6 Mlii 68881 


37S.00 


Add ft» 20 Mlu C8D3VR AM 


750 CD 


16. Pal up. U. 231 


335.00 


K^in 1 or 2 Ad«pu» C*d» Maw JU232 Ad«p«s 


163,00 


£ac& arifairall 4 *'*^**"™ 1 mc parti 




(kail o(« old port «lp|*a*lfl 





6011» Pv-Jid (/Ocard 
Uin 3 68230 Inter bWTVocr chip*. 
6p»p of! Ivb* MCA tBf-rfm» buffer 
d/Mifi oaoTHtJ far «*ch pvsp . 

ftousyi* BtMnJ 

inu far both dip and PO A owvks* A i 

Hii ■ ui.Hii j in mil In TIT ORAM. 

SBC AN 



13D00 
S 195.00 



AKCNST anaiifW icfccop-Jimt LAN. Gber epic* 
LAN «Awsv dt i»wi 

£xpm«kn tor Moton** W> Qmd Module* 
Spec**! for «aiE>kie MUST ANO-02CP** rytwro buyer 
SttSjOO. SAVE 1300.00 
Software OU^-ufiU 



All MUST ANO-CaP* «7*»» mm} bawd bvyw* m cmidwi to 
aWaDoB-lllMad mlt-Mia: 10-70% (irfBMliij m Item. C*U < 
wrijja (or <!■**» Daumril «pply tfler the ttle is wait 



The 

P 

R 

O 

f 



Mustang Specifications 

1Z5 Mhz (optional 16.6 Mhx svailablc) MC68020 full 32- hit wide path 

32-bii wido date and address buses, noo- multiplexed 

an chip inAruct) on cache 

object sxxfe compatible wiih all 68XXX family c»oce»«oT» 

enhanced uvfuvaion set- math co- process or interface 

68881 math hi -speed floating point c*>procis»40 r (opaional) 

dinci citffixfta of full 68020 io«iu£Qoo act 

full Ripport IEEE P754 t draft 10.0 

(roKK-enrJ anal and other »cicx>iiSc math l\mctinr«« 

2 Mcgab)t« of SIP RAM (512 * 32 bit ocg-Wation) 

up to 256K byte* or EPROM 164 i 32 bit*) 

4 AaynchiDnoua acna] UO porta standard 
ofCM-nai to 20 acarial pona 
sundud RS-232iniafaco 
opuaoal Ddwatk imarfaca 
bufTend 8 bit pwrnlkJ pan (1/2 MC68230) 
Ontnnio type pwout 
expansion exutoctor for I/O devices 
16 bit data path 
256 h)te addieu space 
2 invcnwpt inputs 
clock and control signals 
Moianala I/O Channel Modules 
time of day clodi/caicndaf w/Wtlcry backup 
oootrollcr for 2. S 1/4" floppy disk drives 
single or double tide, single or double density 
35 to 80 track Selectable {48-96 TPt) 
SASl interface 

pvognunrnab le pa iodic intenupi gencntor 
interrupt rate from macro- scccrtd* to secon ds 
highly sccurate time base (5 PPM) 

5 bit sense awitr,h. readable by ihc CPU 
liatdwarestngW-step capability 

Thc*c hi-epced 68020 systems are picsooly working n NASA, Aiotnic Energy Commtssicn. 
CovcrnRi cnt A genoo u well as IMiveraiijes. BuxincM, Labs, snd other Crtsical Applicsuons 
CcDten. worldwide, where speed, main crunching snd mulli-user. multitasking fMX C level 
V compatibility and low cost u s must. 




Don't be mislead! 

ONLY Data-Comp 

delivers the Super 

MUSTANG'Oli 



Only the "PRO" Version 
of OS-f Supported! 




This is HEAVY DUTY 
Country! 



r-of i limited lima we wtfl offer a (400 traded on youTl 
ow earn sec. Must t»*o**9 pn*mtr mm ' 

Ljrwp n4 trim «l aorfwtvv, atom and doeunivriiAjhpn. 
C«l tor more mformetioo 



Price List: 






Miuung-Oft) SBC 




$2490.00 


Cabinet w^wiu^ong PS 




$299.95 


5" 80u.ck n»n>y DS/T5D 




$269 95 


fWpy Cible 




$39 95 


OS-9 68K Piofonxil Vcroon 




$850.00 


C CattfOa ($500 V.lue) 




NAT 


Winchester Cibio 




$39 95 


Winchcnsr Drive 25 Mctyu 




$895 00 


Itud Duk ConunUa 




$395.00 


Shipping USA irps 




$20 00 


UruftXX 


Un 


$100.00 


MC6888 1 Opmtih pn>cau» 


Add 


$275.00 


16.67 Mhz MC68020 




$375.00 


16.67 NOu MC6888! 




$375.00 


»MKt MT 61020 s„ 




$750.00 


Nots all Mill Jop. rat with 20 Mhj Sy. 






Toul 


$5299.80 



NEW LOWER PRICES 

25 Mbyte HD Q29^H $3749.80 
85 Mbyte HD $534&m $4548.80 



r 



Note: Only Professional OS-9 Now Available 
(68020 Version) Includes ($500) C Compiler - 
68020 & 6888) Supported - For UPGRADES 
Wriie or Call for Professional OS-9 Upgrade Kil 



Data-Comp Division 

"■>y A Decade of Quality Servtce" 




>v 



*J S s T3rB*- Systems World-Wide 

Computer Publishing, Inc. 5900 Cassandra Smith Road 
Telephone 615 842-4601 - Tele* 51 600-6630 Hi«on, Tn 37343 



68 Woo Journal 



January '89 



A Member of the CPI Family 



68 Micro 
Journal 



10 Years of Dedication to Motorola CPU Users 



6800 6809 68000 68010 68020 



The Originator of "DeskTop Publishing 71 

Publisher 
Don Williams Sr. 

Executive Editor 
Larry Williams 

Production Manager 
Tom Williams 

Office Manager 
Joyce Williams 

Subscriptions 
Cheryl Hodge 

Contributing & Associate Editors 

Ron Anderson Dr. E.M. "Bud'* Pass 

Ron Voigts An Welter 

Doug Lurie Dr. Tbeo Elbert 

Ed Law & Hundreds More of Us 




•.!*■■■•-.' r 

"C'UscrNolcs 

Basically OS-9 

Logically Speaking 

FORTH 

Mac-Watch 



L 



4 

14 

21 

39 

43 



Pass 

Voigts 

Jones 

Lurie 

Law 



'- 



^s 



Intelligent Write/Erase MC68HC1 1 
EEPROM Devices 46 Pinteric 

Bit Bucket 52 

Classifieds 56 




68 MICRO JO 




■ ■■■■ -,/ 





COMPUTER 



PUBLISHING, INC. 

"Over a Decade of Service" 



■World 




(^Contribute N othing - Expect Nothing 



Wld«" 



68 MICRO JOURNAL 

Computer Publishing Center 
5900 Cassandra Smith Road 
IH) Box 849 
llixson, IN 37343 
Phone (615) 842-4600 Telex 510 6011-66311 
Copyrighted © 1987 by Computer Publishing. Inc. 
68 Micro Journal is xhcoiiginal" DeskTop Publishing" product and has 
continously published since 1978 using only micro-computers and 
special "DeskTop'* software. Using first a kil buill 6800 micro omi- 
pulcr, a modified "ball" typewriter, and "home grown" DeskTop Pub 
lishing software. None was commercially available at that time. For 
over 10 years we have been doing "DeskTop Publishing"! We origt 
naled what has become traditional "DeskTop Publishing" ! Today 68 
Micro Journal is acknowledged as the "Grandfather" of "DeskTop Pub- 
lishing" technology. 



DMW 19H6, 



68 Micro Journal (ISSN 0194-5025) is published 12 times a year by 
Computer Publishing Inc. Second Class Postage paid al Hixson.TN. 
and additional entries. POSTMASTER: send address changes lo 68 
Micro Journal. POB 849. Hixson. TN 37343. 

Subscription Kales 

1 Year $24.50 USA, Canada & Mexico $34.(1(1 a year. 

Others add $12.00 a year surface, $48.00 a year Airmail. USA 

funds. 2 years $42.50, 3 years $64.50 plus additional postage 

for each additional year. 

Items or Articles for Publication 



Articles submitted for publication must include aulhois name, ad- 
dress, telephone number, dale and a statement that the material is 
original and the property of the author. Articles submitted should be 
on diskette, OS-9, SK»DOS. FLEX. Macintosh or MS-DOS. All 
printed items should be dark type and satisfactory for photo-reproduc- 
tion. No blue ink! No hand written articles - please! Diagrams ok 

Please - do not formal with spaces any text indents, charts, e tc. (sou rce 
listing oJc.). Wewilledit in all formatting Text should fall flush left and 
use a carriage return only lo indicate a paragraph end. Please write 
for free authors guide. 

Letters & Advertising Copy 

Leltcis to the Editor should be the originalcopy, signed! Lcllcrsof grip 
as well as praise arc acceptable. We reserve the right to reject any letter 
or advertising material, for any reason we deem advisable. Advertis- 
ing Rates: Commercial please contact 68 Micro Journal Advertising 
Department. Classified advertising must he non commercial. Mini- 
mum of $15.50 for first 15 words. Add S.60 per word thereafter. No 
classifieds accepted by telephone. 



Janueiy '89 



68 Micro Journal 



/T 



PAT - JUST 



"\ 



PAT 

With *C Source 
$229.00 



i /Mi m 



V®teinras 



rc» o» * bnM 



..-•-»•# 



=% 



A Division of 



S.E. 
Media- 

MOO Cuundtt Smilh Rd. 

lliuoo, Tn 373-13 

Tele phono 615 842-6809 

TelM 310600-6630 



• 1»4M1I 



J 



^ 



PAT FROM S. E. MEDIA -- A FULL FEATURED SCREEN ORIENTED TEXT EDITOR 

with all the best of PIE. For those who swore by and loved PIE, this is for YOU! All PIE 
features & much more! Too many features to list. And if you don't like ours, change or add 
your own. C source included. Easily configured to your CRT terminal, with special configuration 
section. No sweat! 

68008 - 68000 - 68010 - 68020 OS-9 68K $229.00 



COMBO 




Special $249.00 

JUST 

JUST from S. E. MEDIA - - Text formatter written by Ron Anderson; for dot matrix 
printers, provides many unique features. Output formatted to the display. User con- 
figurable for adapting to other printers. Comes set-up for Epson MX80 with Graflex. Up 
to 1 imbedded printer control commands. Compensates for double width printing. 
Includes normal line width, page numbering, margin, indent, paragraph, space, vertical 
skip lines, page length, centering, fill, justification, etc. Use with PAT or any other text 
editor. The ONLY stand alone text processor for the 68XXX OS-9 68K. that we have 
seen. And at a very LOW PRICE! Order from: S.E. MEDIA - see catalog this issue. 

68008 - 68000 - 6801 - 68020 OS-9 68K 
V With 'C source $79.95 J 



68 Micro Journal 



January '69 




The C Programmers 

Reference Source. 

Always Right On Target! 

( C User Notes 



A Tutorial Series 



By: Dr. E. M. 'Bud' Pass 
1454 Una I-ane N.W. 
Conycrs,GA30207 
404 483-1717/4570 

Computer Systems Consultants 



INTRODUCTION 

This chapter concludes the presentation of a binary file editor and discusses certain problems with the techniques by which 
standard C language compilers perform computations 



C COMPUTATIONS 

As with many other detailed aspects of 
the C language, the standaids leave 
many specifics of computations to the 
implementor. It is the programmer's 
responsibility to be aware of and avoid 
I he common traps. 

Since division of integers is always 
performed in integer mode, the division 
of a smaller number by a larger number 
(in absolute value) will always produce 
zero. Computations must be properly 
arranged to ensure that incorrect results 
arc not produced because of division 
truncation. 

Thus, the expression (A * B / C) should 
usually be stated as ((A * B) / C). not 
as (A * (B / C», so that a larger value 
will be generated by the multiplication 
operation before the division operation 
is performed. This will ensure more 
accurate results. 

For example. ((3 * 4) / 5) = 2, but {3 * 
(4 / 5)) = 0, using integer arithmetic 
and division truncation, not rounding. 

Assuming that the multiplication 
operation will be performed before the 
division operation, in the absence of 
parentheses, will lead to incorrect 
results on some implementations. 
Thus, (3*4/5) may be or 2, 
depending upon the implementation. 



Unfortunately, performing multiplica- 
tions before division does not necessar- 
ily solve the problem. Most C compil- 
ers will promote the operations of an 
expression to the type of the highest 
subexpression, to maintain the accuracy 
of the expression. 

Thus, if A, B, and C above are 16-bit 
short integers, the expression will have 
type short int. Most C compilers will 
recognize that the product of two 16-bit 
values requires 32 bits to maintain, and 
will perform the multiplication and 
division using 32-bit operations. 

However, if the subexpressions are 32- 
bit long integers, many C compileis 
will not extend the temporary results to 
64 bits, as the hardware for 64-bit com- 
putations is usually not available on 32- 
bit machines and the loss of efficiency 
requited to call subroutines to perform 
the extended precision arithmetic may 
be considered excessive. 

Most C compilers will not even warn 
the programmer or user that the 
computation may be or is actually 
subject to high-order truncation, 
leading to potentially disastrous 
situations in which the numbers being 
used to lest an algorithm, but some 
combinations of actual inputs cause 
overflow or division by zero, another 
common problem. 



In the 64-bit case, the programmer 
must determine that this treatment is 
always adequate for the specific case, 
specify double-precision floating-point 
calculations, or perform the extended 
precision integer operations assuming 
32-bit precision. The latter approach 
may be easily accomplished for 
addition and subtraction, but the 
multiply algorithm is somewhat more 
complex and the divide algorithm is 
substantially more complex. 

The floating-point approach has the 
disadvantages of loss of speed and of 
loss of accuracy, in addition to usually 
making the object program larger, in 
the majority of cases, due to the 
floating-point subroutines. Further- 
more, floating-point libraries have 
historically been prone to subtle types 
of errors of their own, and this ap- 
proach should be avoided if not essen- 
tial to the calculations. 

Another point of difference among C 
compilers relates to sign extension. 
Most C programmers are aware of the 
sign extension considerations as they 
relate to variables of type char, since 
this varies significantly among compil- 
ers. 

C programmers ate usually less aware 
of the sign extension rules for such 
arithmetic and logical operations as 
right shifts. In fact, K & R specified 
that sign extensions for right shifts are 
left to the specific implementation. In a 



January '89 



66 Micro Journal 



small sample of seveial compileis, half extended the sign and half did not. Two of the compileis pioviding different results 
produced code for the same hardware, showing that the designers of the compilers had different opinions for sign-extending 
right shifts. 

EXAMPLE C PROGRAM 

Following is this month's example C program; it is the second pan of zap, as discussed earlier. The remainder is presented in 
the previous chapter. 

/* search value in file */ 

search () 

( 

int bt; /* first byte thereof »/ 

int chr; 

long first; 

union • 

I 

long 11; 
char ss[4] ; 

) uu; 

if (!gt_val ("Search for ? ", 4uu.ll)) 

return; 
if (!gt_val ("Start at ? *, isstart)) 

return; 
if (!gt_val ("Stop at ? ", iennd) ) 

return; 
/* tenporary using first to hold EOF value */ 
first - laeek (fileno(zf), 01, 2); 
if (I ennd) 

( 

if (f_verbose) 

< 

v_fprintf (stderr, "EOF at ") ; 

V_fprintf (stderr, deffnit [cur_printmoda) , first); 

Vfprintf (stderr, "\n") ; 

) 

ennd - first - cur_type + 1; 

) 

if (a start > ennd) 

( 

remark ("start > end", OL) ; 

return ; 
) 
if (ennd > first) 

< 

if (f_verbose) 

remark ("end > EOF, truncated", OL) ; 
ennd - first; 

I 

/* end of using first to hold ECF value */ 
tifndef S£ARCH_ACTDAL 

if (fseek (zf, sstart, 0)) 
( 

V_fprintf (stderr, "cannot position to ") ; 

V_fprintf (stderr, deffnit [cur_printnode] , sstart); 

V_fprintf (stderr, ~\n") ; 

return; 
) 
lendif 

(void) signal (SIGINT, quitsearch) ; 
/* shift to align */ 

68 Micro Journal January 89 5 



if (!swab) 
( 

if (cur_type — BYTE) 
uu.33[0] - uu.ss[3|; 

else 

if (cur_type — HOBO) 

( 

uu.ss(0] - uu.ss[2]; 
uu.as[l] - uu.ss[3J; 

1 
1 

bt - BYTEVAL (uu.33[0J); 
first - sstart; 

diddots - interrupted - FALSE: 
while (sstart < ennd) 

( 

/* print a dot for every IK processed */ 

if |!f_silent it (!( (first - sstart) i 0x3f f ) ) it sstart > first) 

( 

V_printf <".">; 
(void) fflush (stdout); 
diddots - TRUE; 
I 
iifdef SeARCH_ACTUAL 

/* searching the actual values (very slow) */ 

if (get_value (sstart) — bt) 

I 

if (cur_type — BYTE) 
foundit (sstart) ; 
else 

if (getvalue (sstart + 1L) — BYTEVAL (uu.ss(l] ) ) 
( 

if (cur_type — WORD) 
foundit (sstart) ; 
else 

if ( (get_value (sstart 4 2L) — BYTEVAL (uu.ss [2] ) ) H 
(get_value (sstart + 3D — BYTEVAL (uu. ss[3] ) ) ) 
foundit (sstart) ; 
) 
) 
start++; 



lelse 



/* searching the old contents of the file */ 

if (fgetc (zf) — bt) 

( 

if (cur_type — BYTE) /* looking for byte is easy */ 

foundit (sstart) ; 
else 
< 

chr - fgetc (zf ) ; 

if (chr — BYTEVAL (uu . ss [ 1 )) ) 

( 

if (cur_type — WORD) 
( 

foundit (sstart) ; 
ungetc (chr. zf ) ; 
) 
else 

( 

chr - fgetc (zf ) ; 

if (chr — BYTEVAL (uu.ss [2] ) ) 

( 

chr - fgetc (zf ) ; 



January '89 &8 Micro Journal 



if (chr — BiTfcVAL (uu.ss(3]) ) 
foundit (aatart) ; 

} 

f seek (zf , astait + 1L, 0) ; 

) 
} 
else 

ungate (chr, zf ) ; 
) 
} 

sstart++; 

if (ferror (zf ) | | feof (zf ) ) 
quit^search () ; 
tendif 

) /* while (sstart < ennd) */ 

if (diddots) 

V_printf P\n"); 
(void) signal (SIGINT, SIGDFL) ; 
if (!f_batch SS interrupted) 
( 

Vj>rintf ("Interrupted at ") ; 
V_printf (def f f nit tcur_printnode] , sstart); 
V_printf ("\n"); 
} 
} 

/* print verification list */ 

verify () 

( 

long addr; 

/* display all modifications entered until now. display in portions 

* of cur_printnode. align to lower cur_type boundary */ 
for (addr - 01, tbl_ptr - tbl; tbl_ptr !- tbl_froe: tbl_ptr++) 
if (tbl_ptr->addr >- addr) 
I 

addr - tbl_ptr->addr & ~(cur_type - 1); 
Vprintf ("vfy: ") ; 

V_printf (defffmt [cur_printmode) , addr) ; 

Vprintf ("%c %-7s -> », dp_type[cur_type] , pr_val (addr, FALSE)), 
V~printf ("%-7s\n", prjval (addr, TRUE)); 
addr +- cur_type; 
> 
) 

int gt_line (dst, prompt, argl, arg2, arg3, arg4) 

char *dst; 

char *pronpt; 

long argl; 

long arg2; 

char arg3; 

char *arg4; 

1 

if (pronpt && !f_Bilont) 

V_printf (prompt, argl, arg2, arg3, arg4); 
(void) f flush (stdout) ; 

if <!gets (dst)) 

{ 

if (f_batch it !f_silent) 
V_printf ("teofl\n"); 
♦ifndef vaxc 

(void) putchar (*\a*); 
tendif 



68 Micro Journal January '89 



return (NULL); 

1 

if (fbatch it !f_ailent) 

V_printf C*%3\n", dat); 
if (dat[0] — ♦*' it dattl) — '2' it dat[2] — '\0') 

return (FALSE); 
else 

return (TROE) ; 



) 



int gt_val (pronpt, 1) 
char *pronpt; 
long *1; 
( 

»1 - 01; 

while (gt_line (buf, p miyt , OL, OL, '\0', NULL)) 

< 

if (idecod (buf, 1)) 
return (TRUE) ; 

( 

return (FALSE) ; 

I 



/* display value, using current aettinga (result is in atatic area) */ 

char *pr_val (addr, cur) 

long addr; 

int cur; /* 1 m use current, - use previous */ 

I 

char *cp; 

int i; 

long val; 

atatic char dat [64]; 

laat_value - 0; 

if (cur_printnode — ASCII) 

< 

cp - dat; 

for (i « 0; i < cur_type; i++) 

{ 

val - getbyte (addr) ; 

addr++; 

if (val >- ' ' M val < 0177 && val !- <\V) 

*cp++ - val; 
else 
{ 

*cp++ - >\\'; 

awitch ( (int )BYTEVAL (val ) ) 

< 

caae '\b' : 

*cp++ - V ; 
break; 
caae ' \n' : 

*cp++ - 'n' ; 
break; 
caae »\t' : 

*cp++ - *t«; 
break; 
caae »\f : 

*cp++ - "f; 
break; 
caae *\r' : 

*cp++ - *r'; 



January w 68 Micro Journal 



break ; 
case '\V: 

*cp++ - *\V; 
break ; 
default: 

V_sprintf (cp, Mo", val); 
while (*cp) 

cp++; 
break; 
\ 
I 
*cp++ - * '; 

) 

*cp - *\0' ; 

l 
else 

( 

val - 01; 

switch (cur_typa) 

I 

case BYTE : 

val - getbyte (addr) ; 
break; 
case WORD: 
if (swab) 
{ 

val - getbyte (addr + 1L); 

val - (val « S) | getbyte (addr ); 

t 
else 

i 

val - getbyte (addr ) ; 

val - (val « 8) 1 getbyte (addr ♦ 1L) ; 

\ 

break; 
case LWOfifl : 

if (swab) 

( 

val - getbyte (addr + 3D , 

val - (val « 8) I getbyte (addr + 2L) j 
val - (val « 8) | getbyte (addr + 1L) j 
val - (val « 8) | getbyte (addr ) ; 

I 

else 

{ 

val - getbyte (addr ) 

val - (val « 8) | getbyte (addr + 1L) ; 
val - (val « 8) | getbyte (addr + 2L) , 
val - (val « 8) | getbyte (addr + 3L) ; 

) 

break ; 
) 
if ( (lastjvalue - val) II cur_printmode !- OCTAL) 

V_sprintf (dst, deffmt [curprintroda] , val) ; 
else 

(void) strcpy (dst, "0"); 

l 

return (dst) ; 



) 



static char *frat [) - 

{ 

w 0%051o 0*051o»c *-7s 



68 Mcro Journal January "89 



"%61d %61d%c %-7s ", 
~x%OSld x*051x%c %-7s *, 
w 0%051o 0%051o%c %-7s " 

J; 

zap (fname) 
char * fname; 

{ 

char chr; /* scratch */ 

int check; /* checksum value */ 

int checkwrite; /* check for write access */ 

int goon; /* until *Y is used */ 

int i; /* scratch */ 

int need_head; /* header toggle */ 

long base; /* base of patching sequence */ 

long offset; /* offset from base */ 

long val; /* holding variable for values */ 

checkwrite - TRUE; 
goon - TRUE; 
/* open file */ 
tifdef MSOOS 

if (! (zf - fopen (foams, (f_write) ? "rb+" : "rb") ) ) 
♦else 

if (!(zf - fopen (fname, (f_write) ? "r+" : "r") ) ) 
lendif 

cant (fname) ; 
/* set defaults and allocate table */ 
cur_type - BYTE; 
cur_printncde - OCTAL; 
if (!tbl) 
( 

if (!(tbl - (struct ntry *) 

calloc { (unsigned) tbl_max, sizeof (struct ntiy )))) 
error ("no room for table") ; 
J 

tbl_cur - tbl_free - tbl; 

prevent - 0; /* reset previous location table */ 

/* loop 1 : loop on Base values */ 
while (goon && gt_val ("Base ? ", (base)) 
( 

/* loop 2 : loop on offset values */ 

while (goon it gtval ("Offset ? ", Sof fset) ) 

< 

need_head - TRUE; 

/* loop 3 : loop on patch commands */ 

while (goon) 

( 

if (need_head it !f_silent) 

Vprintf ("Base Offset Value New\n") ; 

need_head - FALSE; 

if (!gt_line (buf, fmt [cur printnode) , base, offset, 
dp_type [cur_type] , pr_val (base + offset, TRUE))) 
break; 
switch (buftO)) 
J 
case '\0' : 

I* close current, advance and open new location */ 
offset +- cur_type; 
break; 
case '/' : 

/* re-open current using new type */ 
cur_type - WORD; 



10 January '89 68 Mao Journal 



break ; 
case *\V: 

/* re-open current using new type */ 
cur_type - BYTE; 
break; 
case ' | ' : 

/* re-open current using new type */ 
cu retype - LWORD; 
break; 
case **• : 

if (!buf[l]> 
( 

/* close current, back up and open new location */ 
offset — cur_type; 
break; 
> 
if (buffi] !- l f | | buf [2]) 

break; 
/* FALL THROUGH */ 
case *\031' : /* *1 */ 
goon - FALSE; 
break ; 
case *>' : 

/* goto new location *l 

if (Idecod (Sbuffl), Sval) ) 

{ 

push_loc (base + offset) ; 
offset - buf [1] ? val : last_value; 
1 

break; 
case '<*: 

/* goto location V 

if (bufll] — *\0' ti prevent > 0) 

offset - pop_loc (> - base; 
break ; 
case '; ' : 

/* change current display mode ... */ 

chr - buf [11; 

if (isupper (chr) ) 

chr " tolower (chr) ; 
if (chr — >o') 

cur_printmode - OCTAL; 
else 
if (chr — >d') 

cur_printnode - DECIMAL; 
else 
if (chr — 'x' ) 

cur_printmode - HEX; 
else 

if /* ... or store ascii bytes ... */ (chr — % a' ) 
( 

cur_printmode - ASCII; 

for (i - 2; chr - buffi); i++) 

( 

if (checkwrite SS !f_write) 
( 

need_head - TRUE; 

checkwrite - FALSE; 

remark ("no write access", 0L) ; 

J 

put_byte (base + offset, chr) ; 
offset++; 
I 



68 Mcro Journal j«„iuwi M 11 



January '89 



1 

else 

if /* ... or print modifications ... */ (chr — 'v' ) 
I 

verify () ; 

need_head - TRCE; 

) 
else 

if /* ... or search values */ (chr — 's') 
1 

search (); 

need_head - TROE; 

) 

break ; 
default : 

if ({i - decod (buf, Sval) ) <- 0) 
{ 

if (checkwrite SS !f write) 

{ 

need_head - TRUE; 
checkwrite - FALSE; 
remark ("no write access", OL) : 
} 

put_value (base + offset, val) ; 
if <!i) 

offset +- cur_type; 
else 

offset -™ cur_type; 
) 
) 
/* loop on patch commands */ 

J 

/* loop on offset values */ 

) 

/* loop on base values */ 

} 

/* compote checksum, if requested */ 

if (f_check I I f_sum) 

{ 

check ■ 0; 

for (tbl_cur - tbl; tbl_cur !- tbl_free; tbl_cur++) 
check "— (BYTEVXL (tbl_cur->val) | 

( (tbl_cur->old « 8> t Oxf fOO) ) ; 
if (f_sum) 

( 

V_printf ("Checksum - "> ; 

V_printf (deffnC [cur_printmo<te] , check); 

V_printf ("An"); 
} 
1 

/* apply patches, after checksum verification */ 
tbl_cur - tbl; 
if (f_write) 

( 

/* verify checksum */ 
if (f_check) 

while (gt_val ("Checksum ? *, tval)) 
if (val — check I | f_batch) 
break ; 
if (! (f_check SS val !- check)) 

for (tbl_cur « tbl; tbl_cur !« tbl_free; tbl_cur-f*) 
ptv file (tbl_cur->addr, tbl_cur->val) ; 

12 January '89 68 Micro Journal 



if (tbl_cur !- tbl_free) 

error ("no modif ications made") ; 
if (!f_eilent tt f_write tt tbl — tbl_frae) 

remark ("no modifications requested", OL) . 
/* close file and exit */ 
(void) fclose (zf ) ; 



) 



cant (s) 
char *s; 

( 

V_fprintf (stderr, "%s: cannot open %s\n", my_nawB, s) ; 
exit (1); 

) 



remark (a, a) 
char *e; 
long a; 

( 

V_fprintf (stderr, "%s: ", 
V_fprintf (stderr, a, a) ; 
V~fprintf (stderr, "\n") ; 

} 



my_name ) •' 



error (s) 
char *a; 



V_fprintf (stderr, "%a: %s\n*, my_name, a) ; 
exit (1); 



) 



swabcheck () 
( 

union 

{ 

ahozt a; 
char a[2] ; 

> u; 

u.a - 0x1357; 
lifdef SWAB 
lif SWAB 

if (!(u.at0) — 0x57 SS u.afl] — 0x13)) 

error ("please recompile with \"-DSWAB-0\"") ; 
ielae 

if (!(u.a[0) — 0x13 SS u.atl] — 0x57)) 

error ("please reconpile with \"-DSWAB-l\'"') ; 
lendif 
lelse 

swab - (u.a[0] — 0x57 SS u.a[l] — 0x13); 
lendif 
} 



EOF 



FOR THOSE WHO\ 



NEED TO KNOW 



68 MICRO 



JOURNAL 



TM 



68 Mero Journal 



January '89 



13 



<Basicatty OS-9 

Dedicated to the serious OS-9 user. 

The fastest growing users group world-wide J 

6809 - 68020 



A Tutorial Series 

By: Ron Voigts 

2024 Baldwin Court 
Glendale Heights, IL 60139 



PRACTICE WHAT I PREACH 



A few days ago 1 did Ihe cardinal sin at Ihe keyboard. 1 put the 
wrong disk in at the wrong time. 1 was setting up another disk 
with some files. The label on the new disk is identical to the one 
1 keep this column on. With nothing but a brief glance 1 tossed 
the column's disk into drive /dl and entered the line: 

formal /dl "Files Disk" r 

Well it was all over column was gone! Itwasamemory. Weeks 
of work was gone. 

Ihe sin was not formatting the wrong disk. I believe it could 
happen to anyone. Even the best of intentions go bad. The sin 
was I had no backup disk. And to add to the injury, I had not 
even made a hardcopy. 1 know what you are saying, "Ron, what 
happened to all the preaching about making backups?" Well, 
all lean say is that I'm guilty. 1 did not practice what 1 preached 
and 1 paid the price. Now, I'm back to backing up my Tiles. 

THE CURRENT STATE OF BASICALLY OS-9 

This explanation docs not explain why youdid notsec a column 
last month. I feel 1 should explain. To put it bluntly, 1 have gone 
to bi-monthly basis. 1 don't know for how long 1 will be doing 
it this way, but for now expect the column every other month. 

1 should explain someof my reasons for thechange. One reason 
is monthly bum-out. Yes, it is catching up with me. Or maybe 
it is old age. This column will be 4 years old this coming April 
and that is a long time. 1 tip my hat to the old timers writing in 
the magazine, like Ron Anderson and DrE.M. Pass. ] ce nainly 
we cannot forget Don Williams Sr and his staff. How those guys 
have done it for 10+ years is beyond me. 

Another problem is finding lime to get the column out. 1 really 
don't where time goes. Einstein said that time is relative. It is 
like being on a date with a beautiful woman. Time will speed 
along. The following week while wailing for her lo call you, 
time will creep along. ( Female readers please insert "handsome 
man" for the "beautiful woman". ) 



1 have a few other reasons, but at this time wish not to divulge 
them. Hopefully as time goes on things will get back to normal 
and I will once again bring the column back lo a monthly basis. 

3 YEARS OF PROGRAMS FOR SALE 

I have been also at work ona side project for the past few monihs 
and now am ready to unvail it As many of you know this 
column has bacn in existence for some 3+ years, It started back 
in April 1985. This coming April will in fact mark its 4 year 
anniversary. 

There is some history to the column. Originally it was tilled 
Basic OS-9. My task was to write a beginners column on OS- 
9 helping new comers adjusted and get into the swing of things. 
I tired to cover as much as I could. 1 covered programming 
languages, operating systems, micropressesor theory and sto- 
ries of my encounters in the world of computer technology. 
Yes, 1 also covered OS-9. After some months of writing iltc 
column, 1 received a call from Don Williams. It was a tuesday 
evening. Don said that he liked the column, saw a strong future 
for it and thought the name was not adequate. Not only was I 
covering beginner OS-9, 1 was coverering everything else. So 
we changed the column's name to Basically OS-9. 

1 had a number of philosophies on what 1 should write about. 
My main goal was always to enlighten ihe reader. 1 thought of 
it as feeding my readers. In fact one column was even titled 
"OS-9 Smorgasbord." 1 wanted to do one thing in every 
column. 1 wanted to present a program each time. My belief 
was that a program was worth far more than all the rambling 1 
could do. 1 found Ihe computer magazines that only talk and 
present nothing to do get boring very fast. So almost every 
column has some piece of related software. 

The software covered all the types of languages. I presented 
programs in Basic09, Pascal. C Language, Assembler, and 
Kbasic. Some programs were food for thought, while others 
were stand alone. The programs covered a large variety of 
things. To name a few: directory alphabilizcr, checkbook 
balancer, a new DATE program, a simultaneous equation 
solver and new LIST program. 



14 



January '89 



66 Micro Journal 



For the past few months, I have been going through my old tiles 
findingall the source codefrom APRIL I98S through MARCH 
1988. I have just finished the task and put them into a 3 Volume 
set, one for each year of the column. I have al so taken care of 
putting them into a useful form. I have packed, compiled and 
assembled the code. So, the disks not only contain the source 
code, the also have the I-Codc, P-Code, or 6809 object code. 
The arc ready to run. You will need the Basic09 or Pascal 
luntimc libraries. 

Here is a list of what is on the disks. 

VOLIME 1 - 1985 TO 1988 



1. 


APRIL 


BSORT 


BASIC09 


2. 


APRIL 


SORT 


BASIC09 


3. 


MAY 


PAD 


BASIC09 


4. 


JUNE 


PD I SPLAY 


BASIC09 


S. 


JUNE 


IV 


ASSEMBLY 


6. 


JULY 


DISKID 


BASIC09 


7. 


AUGUST 


DISKLOOK 


BASIC09 


8. 


SEPTEMBER 


CRYPT 


C 


9. 


OCTOBER 


RABBITS 


PASCAL 


10. 


NOVEMBER 


DALPHA 


C 


11. 


D6CEHBER 


DNC 


C 


12. 


JANUARY 


CHECKING 


PASCAL 


13. 


FEBRUARY 


DATE 


ASSEMBLY 


14. 


MARCH 


FLOOR 


BASIC09 


VOLUME 2-1986 TO 1987 


t 


1. 


APRIL 


DAI .P HA 


C 


2. 


MAY 


MATRIX 


C 


3. 


JUNE 


PACK 


ASSEMBLY 


4. 


JUNE 


UNPACK 


ASSEMBLY 


5. 


JULY 


GETIME 


ASSEMBLY 


6. 


JULY 


SORT 


C 


7. 


AUGUST 


SYSGEN 


BASIC09 


8. 


SEPTEMBER 


ATTACH 


ASSEMBLY 


9. 


OCTOBER 


NEHTONS1 


KBASIC 


10. 


OCTOBER 


NEWTONS2 


KBASIC 


11. 


NOVEMBER 


TREES 


PASCAL 


12. 


JANUARY 


DEVICES 


KBASIC 


13. 


FEBRUARY 


STRIP 


C 


14. 


MARCH 


WRAP 


C 


VOLUME 3 - 1987 TO 1988 




1. 


APRIL 


H CHECK 


BASIC09 


2. 


MAY 


LIST 


C 


3. 


JULY 


PCOPY 


BASIC09 


4. 


AUGUST 


DOUBLE. VI 


C 


5. 


AUGUST 


DOUBLE. V2 


C 


6. 


SEPTEMBER 


OP TEST 


C 


7. 


OCTOBER 


DATE 


C 


8. 


NOVEMBER 


GETMODDIR 


.VI BASIC09 


9. 


NOVEMBER 


GETMODDIR 


.V2 BASIC09 


10. 


D6CEHBER 


EQUATIONS 


PASCAL 


11. 


JANUARY 


SYSGO.V1 


ASSEMBLY 


12. 


JANUARY 


SYSGO.V2 


ASSEMBLY 


13. 


FEBRUARY 


PLIST 


C 


14. 


MARCH 


PATH 


C 



As you can see there is listed over 42 programs. As it turns out 
this list can be misleading. Some of the Basic09 programs arc 
ically a number of procedures inbedded in one Tile. The 
program OPTEST is really a test for a C module which returns 
the parameters from the input line. Some of them are samples 
to be used as examples. All the source code is provided on this 
3 disk collection. These can be purchased from South East 
Media, S9.95 any single volume or $24.95 for all 3. All non- 
USA orders must add an additional $3.50 for surface mailing 
or $6.00 for airmail. 

AND NOW A SELECTION FROM THE MENU 

As many of know I am not one for menu driven systems. I pefer 
to work in an interactive envrionment. I like the feel of entering 
some cryptic looking command and seeing some type of result. 
Perhap this enchant is what scares of meny people. I like the 
challenge of learning and experimenting. 

Unfoitanelylhis scares off many potential computer user. Also 
businesses cannot really invest the time it takes for a person to 
leant a system. Therefore, a menu driven system is uscfull. It 
is quick and easy to leant. It virtually guides the user thiough 
to his final destination. 

This month I am presenting a menu system that can be imple- 
mented on any OS -9 systems. It may requires a few minot 
adjustments, but nothing major. This the first version and I can 
honestly say that i t may not be fully debugged. It is a diamond 
in the rough. It is up to you to polish it. 

Listing I has the procedure for creating menus. Listing 2 is the 
actual menu program. Everything is written in Basic09 and 
should easy to understand. Let me however explain the theory 
of how the menus arc used. 

The directory "/DD/MENU" should be created. If you do not 
havea/DD, defaultdircctory, in you system (his can be changed 
to /DO, /Dl, /HO or whatever. Just remember to change the 
program accordingly. 

The menus are file contained in their diicctory. Each Hie 
consists of a menu title, numberof entries and the actual entries. 
The menu can consist of cithercommands or lower level menus. 
Lit me explain better by telling the construction of an entry. 

The entry consists of 4 parts. First is the category. At this point 
there are only two types. If a I is encountered for category, then 
the entry is for an OS-9 commands or atleast something a 
SHELL can run. If it is 2, then another menu is being called up. 

Second is whether a parameter is required. For menus this not 
necessary. However, for a command it may required. Consider 
the menu line "Directory". It would be executed using the 
command DIR which can use some type of parameter. Paiamc- 
tcr is a boolean which is set cither TRUE or FALSE. 



68 Micro Journal 



January '89 



15 



Third is the menu line. This is what is displayed. It is what the 
user sees. It gives a hint of what might happen. It can be like 
the command shown above. Or it might be another menu like 
"Word Processing Menu". 

Finally is the actual command line. This is what gets processed. 
It can be command or a menu file found in "/DD/MENU", For 
the last two examples, they would be "D1R" and "WP_FILE", 
respectively. 

Let us look at an example. 

FILE: main TITLE: Main OS-9 Menu ENTIRES: 3 ENTRY 1 
CATEGORY: 2 PARAMETER: NO MENU LINE: Word 
Processing Menu COMMAND: WP_FILE ENTRY 2 CA1E- 
GORY: 1 PARAMETER: YES MENU LINE: Direcloty 
COMMAND: DIR ENTRY 3 CA1EGOR Y: 1 PARAMETER: 
NO MENU LINE: Shell COMMAND: 



FILE: WP_FILE TITLE: Word Processing Menu ENTRIES: 3 
EN1RY 1 CA1EGORY: 2 PARAMETER: YES MENU 
LINE: Standard OS-9 Editor COMMAND: edit ENTRY 2 
CA1EGORY: 2 PARAMETER: NO MENU LINE: Stylo 
COMMAND: stylo ENTRY 3 CATEGORY: 2 PARAME- 
1ER: NO MENU LINE: DynaS tar COMMAND: ds 

] think the best way to get to learn how menu woiks is to type 
them up, try the example I have given you and see it in action. 
Please, make clianges if you wish. 1 am considering making a 
fancier version of this in C or assembly lanuguage. Maybe 
some body out there is willing to give it a by. 

That is it for this column. We'll see you next lime. 



LISTING 1 



PROCEDURE nak« oanu 



0000 
001E 
0021 
0033 
0044 
0055 
0058 
0076 
0079 
0098 
009B 
00B8 
00BB 
00BE 
00BF 
00DA 
0101 
0102 
0115 
0121 
0128 
0134 
013B 
0149 
014A 
015A 
0173 
0197 
01AE 
01B0 
01B1 
01C2 
01E2 
01SC 
01EE 
01EF 
0203 
022A 



Name : Make_Menu 

By: Ron Voigts 
Date: 3-NOV-88 



Original 



(« 
(« 
(« 
(« 
(* 
(* ************ 

(* 

(* Version 1.0 

(* 

(* * ••« 

(* 
(* 



(* Set up cortplex data type 
TYPE entry_type-categoiy: INTEGER; parameter : BOOLEAN; menu_line : STRING ( 64 ] ; conmand: STRING [64] 

(* Set up variables 
DIM s:STRING[32] 
DIM path:BYTE 
DIM title: STRING [64] 
DIM esize: INTO3R 
DIM entry (10) :entiy_type 

(* Get file name 

INPUT "Enter file name: ~,s 

(* Create it in directroy Vdd/mBnu" 
CREATE ♦path,"/dd/menu"+s:WRITE 
PRINT 



(* Get menu title 

INPUT "Enter menu title: [64]: 

PUT Ipath, title 

PRINT 



.title 



(* How many entries? 

INPUT "Enter number of entries: [10] : 

PUT (path, esize 



.esize 



16 



January '89 



68 Micro Journal 



0234 
0235 
025D 
0270 
0272 
0283 
0285 
02A5 
02A7 
02C2 
02DD 
02 EB 
02 EF 
02FD 
02FF 
0301 
0328 
032A 
034F 
035E 
0369 
036F 
0371 



(* Get the the information for each item 
FOR i:-l TO esize 

PRINT 

PRINT "Entry - *.i 

print 

INPUT "Enter category: ", entry (i) .category 

PRINT 

INPUT "Parameter? (Y/N) : ",s 

IF LEFT$<a,l)-"Tr" OR LEST$(s,l)-"y" THEN 
entry (i) .parameter: -TRUE 

ELSE 

entry (i) . parameter : -FALSE 

END IF 

PRINT 

INPUT "Enter menu line: [64]: ", entry (i) -menu_line 

PRINT 

INPUT "Enter command: [32]: ".entry (i) .command 

POT #path, entry (i) 
NEXT i 
CLOSE Ipath 
END 



LISTING 2 



PROCEDURE menu 



0000 
001E 
0021 
002E 
003F 
0050 
0053 
0071 
0074 
0093 
0096 
0083 
00S6 
00D3 
00E1 
00ED 
00F9 
0108 
0114 
0115 
0130 
0157 
0158 
016B 
0179 
0185 
018C 
0198 
019F 
01A6 
01B7 
01B8 
01DF 
01 EA 
01EB 



*************************** 



Name: Menu 

By : Ron Voigts 

Date: 3-NOV-88 



Veraion 1.0 



Original 



Include following modules: 

1 . Get Menu 

2 . Screen 

3. Blanks 

4. Run Shell 

5. Choice 



(* Set up caiplex data type 
TYPE entry_type-category:INTE(3K; parameter : BOOLEAN; menu_line:STRING[64) , 

(* Set up variables 

DIM entry (10) :entry_type 

DIM title: STRING [64) 

DIM level : INTEGER 

DIM file: STRING [64) 

DIM esize: INTECXR 

DIM i: INTEGER 

DIM menu_stack(8) : STRING [64) 

(* The first file will always be "main" 
file: -"main" 

(* Get the "main" menu 



comrand: STRING (64] 



68 Mcro Journal 



January "89 



17 



0201 
021A 
021B 
022D 
0234 
0235 
0262 
0264 
0265 
0278 
0291 
0292 
02A6 
02B0 
02B1 
020C 
02E8 
02E9 
030E 
031A 
0321 
0325 
0326 
0351 
035C 
0367 
0380 
0382 
0386 
0387 
03A2 
03B4 
03C1 
03C3 
0X4 
03DA 
03EC 
03FA 
0413 
041F 
042A 
04 2C 
042D 
0443 
0462 
0464 
0477 
047C 
047E 
0480 
0484 
0486 



RON get_menu (file, title, esize, entry) 

<* This is level 1 
level:-l 

(* Main program loop with exit except CNTRL-C 
LOOP 

(* Print the screen 

RUN screen (title, level, esize, entry) 

(* Get user's choice 
RON get_choice (i) 

(* If i-0 then we are backing out one level 
IF i-0 TIEN 

(* Can't back up further than level 1 
IF level-1 TIEN 
level:-! 

EI£E 

(* Else we go back a level and get the menu 
level: -level-1 
file: -me nu_stack ( le ve 1 ) 
RON get_menu (file, title, esize, entry) 
ENDIF 
ELSE 

(* Process a direct comrtand 
IF entry <i) .category-1 THEN 

RUN run_shell (entry (i) ) 
ENDIF 

(* Proces another menu 

IF entry <i) .category-2 THEN 

file: -entry (i) .command 

RUN get_menu (file, title, esize, entry) 

menu_stack (level) :-file 

level : -level-f 1 
ENDIF 

(* Must be a mistake! ! 

IF entry (i) . category*: 1 OR entry (i) . category >2 THEN 
PRINT 

PRINT *Bad Menu Entry!" 
PRINT CHRS(7) 
ENDIF 
ENDIF 
ENDLOOP 
END 



PROCEDURE get_menu 



0000 
0022 
003D 

0064 
0065 
0078 
0084 



(* Read menu file from "/dd/menu" 
(* Set up complex data type 

TYPE entry_type -category : INTfcXiK ; parameter: BOOLEAN; 
:STRING[64); command : STRING [64 ] 

(* Passed arguments 
PARAM file: STRING [32) 
PARAM title: STRING [64] 



menu line 



18 



January '89 



66 Mcro Journal 



0090 
0097 
00A5 
00A6 
00B9 
00C4 
00C5 
00E0 
00F8 
00F9 
01 OA 
0114 
0115 
0125 
012F 
0130 

0143 
0154 
0162 
016D 
01 6F 



PAR AM esize: INTEGER 

PARAM entry (10) :ontry_type 

(* Set up variables 
DIM i, path: INTEGER 

(* Get file from Vdd/manu" 
OPEN *path, "/dd/tnenu/"+file:READ 

(* Get menu title 
GET #path, title 

(* Get menu size 
GET ♦path, esize 

(* Get menu entries 
FOR i:-l TO esize 

GET ♦path, entry (i) 
NEXT i 

END 



PROCEDURE screen 



0000 
0013 
0027 
004E 
004F 
0062 
006E 
0075 
007C 
008A 
00BB 
00A2 
00A9 
00B0 
00B1 

ooco 

0OC7 

ooce 

00E7 
OOEC 
OOEE 
00F0 
00F1 
0104 
0115 
01 1A 

one 

011D 
0131 
0135 
0141 
0155 
0157 
0159 
015A 
016F 
0180 
0186 
0192 



(* Print the screen 
(* Complex data type 
TYPE entry_type-category: INTEGER; parameter :BOOLEAN; menu_line:STRING[64] ; command:STRING(64) 

(* Passed arguments 
PARAM title: STRING (64) 
PARAM level : INTEGER 
PARAM esize: INTEGER 
PARAM entry (10) :entiy_type 

(* Set up the variables 
DIM i: INTEGER 
DIM ssize:INTEGER 

(* Screen width 
ssize:-64 

(* Clear screen and home cursor 
PRINT CHRS(12> 
PRINT 
PRINT 

(* Print first line 
RON blanks ( (saize-LEN (title) 1/2) 
PRINT title 
PRINT 

(* Print second line 
PRINT DATES; 
RON blanks (ssize-20) 
PRINT USING "'Level \ 13", level 
PRINT 
PRINT 

(* Print menu choices 
FOR i:-l TO esize 

PRINT " *; 

PRINT OSING w i3"; i; 

PRINT ". "; entry (i) .manu_line 



68 Micro Journal 



January '89 



19 



01A2 


NEXT 


01AD 


END 


OlAF 





PROCEDURE blanks 

0000 (* Print specified number of blanks 

0023 PARAH i: INTEGER 

002A DIM j: INTEGER 

0031 FOR j:-l TO i 

0042 PRINT " "; 

0048 NEXT j 

0053 END 

0055 



PROCEDURE get_choic* 



0000 
002A 
0031 
0033 
0035 
0056 
0056 



(* Gets user' s choice returning an integer 
PARAM i: INTEGER 
PRINT 
PRINT 

INPUT "Choice: ( to Backup) : ",i 
END 



PROCEDURE run_ohell 

0000 (* Routine to run a conrand 

001B TKPE entry_type-cat«gory:INTEC£R; parameter: BOOLEAN; manu_line : STRING (64 ] ; command: STRING [64] 

0042 PARAM e:entry_type 

004B DIM s: STRING [64] 

0057 PRINT 

0059 PRINT "Command: ",e. command 

006D PRINT 

006F IF e. parameter THEN 

007B INPOT "Enter paratnter: ",s 

0093 ENDIF 

0095 SHELL e. command*" "-fa 

00AS PRINT 

00A7 

00AB (* Built in PAUSE feature 

O0C1 INPDT "Type <RETURN> to continue!", a 

00E3 END 



FOR THOSE WH 




68 MICRO 
JOURNAL 



TM 



20 



January '89 



68 Moro Journal 



L©gioally 




kino 



Most of you will inwc u ib ei 
Bob f ran his (Cries of Idlers 
an XB ASIC If you like U or 
wist more, let Bob or ui 
know. We wim 10 give yon • 
what you waxi! 



The Mathematical Design of Digital Control Circuits 

By: K. Jones 

Micronics Ruesrdi Corp. 

33383 Lynn Ave.. Abbouford, B.C. 

Canada V2S 1E2 

Copyrighted © by It Jones A CPI 



SOLUTIONS TO TEST THIRTEEN 



la. 



A 


8 


c 


D 











I 








l 








1 


1 


1 


1 











1 


t 





1 


I 


1 


I 


o 



) 
I 

5 
I 

3 
3 



A 


8 


c 


D 











1 








1 





1 








o 



I I I 



St ABfcp 



3 3 3 3 



CM 



A 


B' 


c 


D 





I 





» 





1 


1 











1 


1 


1 


1 








1 








1 


1 





1 


o 



2 
2 
2 
2 
2 
2 



3 3 3 3 



ibj** 



FIGURE T13S.1 A 

A B C P 



2 
2 
2 
2 


















1 





I 





1 


1 





1 








I 


1 





1 





1 


1 


1 


1 



A' 


B 


C 


p 


] 




















1 








1 


0| 



I I I 



A 


B 


c 


D 





1 





1 





I 


1 





1 








1 


I 





1 






2 2 2 2 



A' 


B' 


c 


D 


1 


1 








1 








1 


1 





1 








1 





1 





I 


1 











1 


1 



2 

2 
2 
2 



2 
2 
2 
2 
2 
2 



A' 


B 


c 


D 


I 











1 


J 





1 


1 


1 


1 














I 








1 








1 


1 


1 



3 3 3 3 



Sj A'B'CD 
Ok) 



3 

3 
I 
1 

3 



FIGURE T13S. IB 3 3 3 3 



68 Micro Journal 



January "89 



21 



A 


B 


c 


D 


e 











( 











1 














i 


1 


1 





1 


1 


1 



























1 


1 






1 




1 




1 




1 







1 


1 


1 


1 



A 


e 


c 


t> 


£ 











1 











1 








1 















I I J 
S3 ABCDE' 

GO 



6 6 4- 



A 


B' 


c 


D 


£' 





l 





1 


1 





i 


1 





1 





1 


1 


1 










1 


I 




1 



1 
] 




1 





1 







1 


t 
















1 


1 







1 





1 







1 


1 





6 


6 


6 


6 


I 



A 


B 


c 


D 


E 


F 











1 


1 











1 








1 





1 








1 








1 





I 











1 





1 


1 


1 





1 


1 


1 


1 





) 














1 


I 





I 











1 





> 





1 


1 


1 
1 

I 




1 

1 


1 




1 
1 






1 




1 



1 1 



6 6 6 6 

A' B C 












FIGURE T13S.2 



2 

2 
2 
2 
it 
W 
2 
2 
U 
I* 
If 
It 



6 6 

e f 



O I 



A 


e 


c 


D 


£ 


F 











1 


1 











1 








1 





i 








1 








i 





1 








1 














1 


1 





1 












2 2 2 2 



A' 


e 


c' 


D 


E 


F* 







I 


1 


1 


1 






i 




1 








I 




1 




i 


1 


1 





1 




I 


1 


1 


I 







i 





I 


1 


1 








1 


























1 














1 














1 











1 


1 


1 


I 


I 


o 


1 















A' b 
















I 

I 
I 
o 





I 
I 



C D 



(3) 






1 


1 





3 


I 








1 


3 








1 





3 





1 








3 




1 


1 
1 


1 





5" 
5 











1 


1 


1 











1 


( 





1 


1 


3 


i 


1 





1 


3 





1 


1 





3 


i 








1 


3 



(, 6 6 6 £ 6 



6 6 6 6 6 6 



Remember that it's possible you made different choices fiom me when it came to selecting columns to doubly-complement, 
but you should at least end up with an equivalent symmetiic function. 

Mile 17 - heading for Mile 18 



22 



January '89 



68 Micro Journal 



1-asi lime we were together I promised that you'd meet the "daddy" of symmetric functions, so here he is, the fellow who's 
going to enable you to design 

ITERATIVE NETWORKS 

Symmetric circuits form part of a larger class of circuitry known as "iterative" or "re-itciative" networks, so called because 
there's a basic pattern to them, which repeats itself. ALL iterative networks (including symmetric) can be designed by the 
technique to which you'll shortly be introduced, though in the case of the sub-class, symmetric circuits, it's more usual to do 
so by the methods we've already studied. 

Another sub-class of iterative networks is called "positional circuits", and deals with the position, or physical relationship, of 
the relays in the network, rather than just the number of relays operated. From now on it's to be understood that when we 
speak of "a circuit of 20 relays ... ", or any other number for (hat matter, they'll be lettered (or numbered) consecutively. A 
"set" is a group of consecutively lettered (numbered) relays, and it's with sets of different types that we'll be dealing next I 
think it goes without saying that there MUST be at least one unoperated relay between one set and another. I mention this 
only because I've sometimes been asked whether, say, relays 4, 5 and 6 could be regarded as a set, and relays 7, 8 and 9 as 
another. By definition these constitute ONE set, as they follow consecutively without a break. Got it so far? Good! Now 
let's look at typical circuit specifications that we may be asked to design. 

1. A ciicuit of SO relays is to be closed if, and only if, one set of exactly 3 relays is operated, and all other relays are unoper- 
ated. 

NOTE: It's common practice in switching theoiy and other related branches of mathematics to use the word "iff to mean 
"if, AND ONLY IF ... ", so we'll adopt this convention from now on. 

2. A circuit of 98 relays is to be closed iff ALL sets contain exactly 3 operated relays, otherwise no output. 

3. A circuit of 457 idays is to be closed iff there are exactly 2 sets of relays operated, one set to contain 2 relays and the 
other 3 relays, but not necessarily in that order. 

4. A circuit of 153 relays is to be closed iff there arc exactly 3 sets of operated relays, no matter how many relays in each set. 

Doesn't example 3 look frightening? 457 relays! Wow!! But there's no need to wotiy, as I can assure you that the circuit is 
just as easy to design whether (here are 45, 457 or 457983 relays involved. In designing positional iterative networks, we're 
not concerned with how many relays there are, as our whole attention will be focussed on one "prototype" relay somewhere 
along the chain. We usually picture our prototype as being somewhere about the middle of the chain, that is if we think of its 
position at all, though it doesn't have to be so. 

By convention we call our prototype relay "X", and instead of thinking about relay contacts, we now think in terms of input- 
lines bringing information into X about conditions in the lower-numbeied relays. We also imagine an equal number of 
output-lines leaving X, and passing on information to the next relay, Y, about conditions UP TO AND INCLUDING X 
ITSELF. The output-lines of relay-X are, of course, the input-lines of relay- Y. 

ITERATIVE NETWORKS - EXAMPLE I 

As a first step in learning our new design process, let's take spec-l above and try to design this circuit, beginning with 
Diagram 88a. On our squared pad, we set up two columns, headed X=0 and X=I, X being our prototype relay. Immediately 
to the left of the X=0 column we write the code "0", and further out to the left again (under a heading "Relays Operated" we 
write a second "0". The left-hand is interpreted as "No relays operated so far", and the in the Code column is simply our 
code for this condition, litis is the lowest level, or simplest piece of information possible! 



68 Mfcro Journal January '69 23 



CVftKj 




IL 





IL 

2L 

3L 

3NL 



\o 



X 

o I I 

I 

1 - 2 



fcfl 



w 



o I ' 

I 

1 - 2 

2 - 3 

3 4» 



CO 



°n 



iatnStA 



IL 

2L 

3L 

3NL 





IL 
2L 



Cote 





1 








I 


i 


- 


2 


2 


- 


3 


3 


k 


- 


U 


U 


- 



3L,3ML 



60 





| 








I 


1 


- 


2 


2 


- 


3 


3 


3 


- 



<s> 



Diagram 88 

Now let's look at the X=0 column of Code-0 in 88a. With information coming in to X, and X itself unoperated. it. too, 
must obviously pass on the same information to relay-Y (namely, "No relays operated to this point"), which fact we record 
by entering a in this column. On the other hand, moving to the X- 1 column, if relay-X IS operated, it must pass on to 
relay-Y the information that the relay immediately in fiont of Y is operated, and that it's the only one so far. Let's give this 
the code 1 , to stand for "one relay operated immediately before you" and insert this code in the X=l column. Normally we 
abbreviate this long statement to "IL", for 1-LAST, meaning "one relay operated, and it's the last one in the chain to this 
point". 

Of course, if it's possible for X to pass this info on to Y, it's also possible for similar news to come into X from US previous 
relay. So as we haven't defined what our response will be to Code-1 , let's open up a new line, as in 88b, with IL at the 
extreme left, and its code "1" in the code column. So now X "knows" that relay-W alone is operated, and if X itself is NOT 
operated then we obviously have a set of exactly one relay. This is a breach of the specs, so we'll insert a "-" in the X=0 
column to indicate a complete blockage of information to relay-Y . This means that power will be cut off at this point! 
If X IS operated, however, we now have 1 WO consecutively operated relays towards the required set of three. At this point 
in our analysis we have no code for this condition, so let's create code-2 to represent it, and insert 2 in the X=l column. This 
signifies that X is passing along to Y the info 2L, meaning "the two last relays in the chain to this point are operated". 
And so we proceed to 88c, where I've taken the process to completion, but we'll continue with the discussion, starting at 2L, 
code-2, and assume we have this info coming in to X, rather than being transmitted to Y. What do we do here? Well, if X=0, 
a set of two has been created, which again is a breach of specs, so we'll cut off power by inserting a "-" in this column. If X 
IS operated, we'll have a sequence of 3 relays to this point, so let's code this as 3, to stand for 3L, or "the last 3 lelays are 
operated to this point", and insert 3 in the X-l column. 

This being another new code, we open up line 3L with 3 in the code-column, and analyse the reaction of X if this info were 
coming in on ITS input-lines. If X is not operated, we've now closed off our set of 3 relays, so let's code this as 4, to stand 
for 3NL, or "three relays operated, but not the LAST 3", and insert this code 4 in the X=0 column. Alternatively, we could 
let code 4 stand for IS , meaning "We've got our set of 3 completed", but for now we'll stick with 3NL. If X IS opeiated, 
we've got four idays in our set (a breach of specs), so we'll insert a "-" in the X-l column to cutoff power. 
As we have an unanalysed code- 4 in our table, we're forced to open up row 3NL, code-4, and ask ourselves what X should 
do if it's UNoperated. It's obvious that it must pass on this same info to Y. namely, "a complete set of 3 somewhere back 
down the line", so we'll enter 4 in the X=0 column. And what if X IS operated? Why, it would be starting a second set, and 
as this is forbidden, we'll enter a "-" in the X=l column to cut of f power again. And here we seem to have ground to a halt, 
as we didn't create any new codes this lime, so the main chore woik has been done, and we've got all the specs incorporated 
into our table 88c. 

But not quite all yet, as we still have to code for POWER-OUTPUT! 1 his we do in 88d, by adding a column to the right of 
our table and heading it "Z", for output. This column has to be completed from the viewpoint of the output device itself • 
let's say a LighL Now, reading down the "Relays Operated" column, we ask ourselves "Should I switch ON for 'No relays 



24 



January '89 



68 Micro Journal 



operated?'", and as the answer is NO, we don't insert anything in the Z-column for this row. Similarly for I L (meaning "the 
relay immediately in front of me is operated") and for 2L (meaning "there are 2 relays operated immediate] y in front of me"). 
However, the info 3L ("3 relays operated immediately in front of me") or 3NL ("a set of 3 relays operated somewhere down 
the line") bungs the response "YES, 1 should light up!", so we insert a 1 in oolumn-Z for these two codes. 
L«ct's lake time out to re-read all that lot before moving on, but, in any case, I'm going to work out some more examples later 
on, just to be sure you've got it! But first we must see how to go about 

ELIMINATING REDUNDANCIES IN ITERATIVE NETWORKS 

Just as we've done with other procedures, out last step before drawing the actual circuit is to reduce the number of lines in the 
table by seeking out, and eliminating, any redundancies which may exist. We'll deal with this subject more fully later on, but 
for now, to maintain our flow of thought, we'll adopt a very simplified procedure. 

First we can divide our table into two definite sections, one which calls for an output of and one which calls for 1. Redun- 
dancies due to equivalences cannot occur between sections, as the outputs also have to be equivalent, just as with sequential 
How-tables. So let's start with Group 0, where we see that Line-0 (code-0) has nothing in common with the other two lines 
of the same group, so we move on to line- 1. Be warned that "-" does NOT correspond to a phi, and must NEVER, under any 
circumstances, be combined with anything but another "-". 

Comparing line-1 withline-2, we note that the X=0 column matches. As far as the X=l column is concerned, these two lines 
WOULD be equivalent if only 2 and 3 were equivalent as well. Unfortunately, lines 2 and 3 belong to different groups, so 
it's impossible for them to be equivalent. Theiefore, theie arc no equivalences in Group-0. 

Now let's look at Group- 1, and right away we see that line-3 is equivalent to line-4 as both X-columns match and also the 
output. We therefore superimpose lines 3 and 4 (see 88e), calling it line-3, and change all 4s to 3. 

DRAWING THE PROTOTYPE FROM THE FINAL TABLE 

It only remains now to draw the netwoik of our prototype cell, bearing in mind that there are actually 50 such cells joined 
together in a chain. The translation of the table into a circuit is an easy task indeed, as all the necessary info is contained in 
the table, the circuit being drawn in a matter of seconds. 




■ £*® -a 



(5> 



Diagram 89 

First, I'll diaw for you, in Diagram 89, a single cell corresponding to our prototype. There are arc two vertical columns of 
four circles each, labelled 0, 1, 2 and 3, the left-hand column being the input-lines to our prototype, and the right-hand 
column the output-lines. Power-input occurs at input-line -0 of the first cell of the chain, and as our table shows that power- 
output occurs only in line-3, the output will therefore be taken offal output-line- 3 of the final cell in the chain. 
Note the heading "X" above our prototype! Still working from table 88e, we interpret all entries in the X=0 column as being 
NC-con tacts, and those in the X= 1 column as NO-contacts. Ignoring the "Relays Operated" column, we read code-0 as 
saying "Input-line goes to", the "0" in the X=0 column as "output-line-0 via a NC-con tact", and the "1" in the X= 1 column 
as "output-line- 1 via a NO-contact". The full sentence reads "Input-line-0 goes to output-line- 1 via a NC and to output-line- 1 
via a NO", so this is what we draw at the top par t of our prototype. 

Code-1 reads as "Input-line- 1 goes to nowhere via a NC and to output-line-2 via a NO", so we don't even draw a NC-contaci 
from input-line- 1, merely a NO-contact to output-line-2. 

Similarly, input-line-2 connects to output-line-3 via a NO-contact only, and finally, inpul-line-3 connects to output-line- 3 via 
a NC contact only. 



68 Micro Journal Janu8r » ' 89 



25 



DRAWING THE COMPLETE NETWORK 



It's already been mentioned that the complete circuit consists of SO such cells connected in series, with the output-lines of one 
cell being the input-lines of the next. Only the first few and the last few cells in lhe chain will be different. For instance, 
looking at Diagram 90, we can see that as power comes in on input-line-0 only, input-lines 1,2 and 3 may be omitted for the 
Hist cell. This means that cell-2 will have only input-lines and I, and so on. Similarly at lhe output end, output-lines 0, 1 
and 2 are unnecessary in the final cell, output-lines and I in the last but one, and so on. 



Irtput~ 



o^V vvvv © 




© © 
© © © 



Sd-^©- 



Output 



Diagram 90 

Diagram 90 is a simplified version of the complete network, showing only one prototype cell X in the centre. Actually, as 
there are three "odd-ball" cells at either end, there'll be 44 such X-cells in the middle, all exact copies of our full prototype. 

A little study of 90 shows that the operation WILL be exactly as per specs! Only if a set of 3 consecutive relays is operated 
will power be able to flow from the lop horizontal line down to the lower, and through to the output via a string of NC- 
contacts. If any more relays operate, the lower line will become open-circuited and cut off the power, while if less than a set 
of 3 is operated power will be switched only as far as Ievel-1 or level-2 and be unable to go any funher. If no telays are 
operated at all, power will simply travel along the top rail and terminate in level-0 at the fourth itlay from the end. 

SOME CHIT-CHAT 

With practice, prototype cells can be constructed with very little need for combining lines. For instance, in the example just 
completed, once we got to constructing the code-3 line of 88c, which signifies that we've JUST completed a set of 3 immedi- 
ately in front of X, we should realise that from the circuit's viewpoint it matters little whether a fourth relay energises 
IMMEDIATELY FOLLOWING this set, or whether it's separated by a gap of non-opciated relays. In either case, the spec 
"one set of 3 relays" has been exceeded. Consequently, this particular circuit needn't distinguish between 3L and 3NL, and 
we could simply have entered "S3" in the "Relays Operated" column (meaning "we have our set of 3"), which is what we 
ended up with, more or less, in 88e, after having gone through the stage of 88d. 

AND SOME TRICKY" INFO RE ITERATIVE EQUIVALENCES 

Before working out some more examples for you, I simply MUST unload this stuff about equivalences! I've already ex- 
plained the rule that, WITHIN A GROUP, whether Group-0 or Group I, if two or more lines have EXAC1LY the same 
entries in both X=0 and the X= I columns, then they're equivalent. The higher-numbered line can thus be eliminated, and all 
references to this now non- existent line, wheiever they occur in the remainder of the table, must be changed to that of the 
lower-numbered line. 

In our worked-out example (see 88d again) we came to the point where we considered combining lines 1 and 2. Our thoughts 
went something like "I and 2 WOULD be equivalent if"-" and "-" are (column X=0), which, of course, they are, and also 
(column X=l) if 2 and 3 are. So let's look at lines 2 and 3! This possibility is ruled out on three counts, (a) "-" and 4 can 
NEVER be compatible; (b) 3 and "-" can NEVER be compatible; and finally (c) the outputs are incompatible. And so, 
because we came across an incompatibility in our chain of reasoning, the original thoughts about 1 and 2 are INVALID, and 
they cannot be equivalent." 

But suppose for a moment that linc-3 not only had a 0-output, but also had the entries "-"and "Pin the X-columns. You 
should draw this imaginary chart and follow our new line of thought. Here we go! "The equivalence of 1 and 2 depends on 
the equivalence of 2 and 3, so let's look at lines 2 and 3. Aha! The two "-"s in column X=0 are equivalent, but column X=l 
says thai the equivalence of lines 2 and 3 depends on the equivalence of lines 3 and 1, so let's look at lines 1 and 3! But the 



26 



January '69 



88 Micro Journal 



equivalence of lines 1 and 3 depends (in column X=l) on ihe equivalence of lines 2 and 3. So here we are, back at our 
starting-point AND NOWHERE ALONG THE WAY HAVE WE COME ACROSS A NON-EQUIVALENCE. Therefore 
ALL the pairs we've considered in this chain of icasoning arc equivalent, namely 1 and 2, 2 and 3. and 1 and 3." Thai is to 
say, all three lines t, 2 and 3 would be equivalent and could be rolled up into a single line-1. 

In sequential flow-tables we regard different lines as being non-equivalent unless we can show them to be equivalent or 
pseudo-equivalent, but in prototype tables all lines within a group are regarded as being equivalent unless a chain of depend- 
ences ends with a non equivalence somewhere. In other words, in sequential theory we must prove that two or more tows 
ARE equivalent, otheiwisc they're not, but in prototype tables we must piove that they're NOT equivalent, otherwise they 
are. 

Some examples of simple equivalences arc shown in Diagram 91, so we'll rely on this intuitive approach until we come to a 
more precise method for dealing with random-input sequential circuits some distance along our journey. Apart from TESTs I 
doubt that you'll have a REAL NEED to design an iterative network in the meantime. 








1 







1 







1 







1 







i 







I 


1 

2 


4 


3 
3 


a ' 


k 


3 


1 

2 


2 
2 


3 
3 


55 ' 


i 


3 


1 1 
2 


1 

2 


3 

3 


= ' 


i 


3 







1 







l 







1 







1 







l 







1 


1 

2 


i 
2 


2 
1 


- ' 


1 


1 


1 
2 


1 

2 


I 
2 


5 ' 


I 


I 


1 

2 
3 


2 
I 
2 


2 
3 
3 


s > 


I 


I 



Diagram 91 

The triple hoiizontal bars are read as "is equivalent to". Note in the final example, that although the three rows would be 
completely incompatible in sequential theory, our thoughts here would be "1 is equivalent to 2 if 2 is equivalent to 1 (column 
X=0), which it IS (as this is the possibility we're considering light now), AND if 2 is equivalent to 3 (column x=l). so let's 
look at lines 2 and 3. 2 and 3 are equivalent, according to column X=0, if 1 and 2 arc (our original postulation) and if 3 is 
equivalent to 3 (column X=l). So let's look at lines 1 and 2, but. by golly, that's where we started from, and, BECAUSE WE 
DIDN'T COME ACROSS A NON-EQUIVALENCE ALONG THE WAY. and we've studied lines 1 . 2 and 3. then these 3 
lines are equivalent. So let's make them all into 1." 

TO CONTINUE 

And now, to familiarise you with our technique, I'll work out three more examples for you, talking my way through step-by- 
step. In each case, I'll set out the prototype tables in full, and then justify the entries as 1 go along, though as an additional 
exercise you should commence with a blank chart and fill in the entries as we proceed. Off we go with 

I1ERATIVE NETWORKS - EXAMPLE 2 

Design a prototype cell for a circuit of "n" relays which will give an output iff there is exactly one set, consisting of either 
two or three relays. 



Relays 
OpvvtXmA 


Ctd« 


I 




< 
1 


z 











1 




1L 


1 


- 


l 




2L 


2 


3 


U 


t 


S2 


3 


3 


- 


1 


3L 


k 


5 


- 


1 


S3 


5 


5 


- 


1 



» 





I 

Nofe-^ 2 
3 



3 
3 



I 

1 
3 



00 



Diagram 92 



66 Mcro Journal 



January '69 



27 



SCULPTOR 




From I he world's olflcsl & largest OS-9 
software house! 

CUTS IMUM.H \>I>1IM. TIMK II" TO 80% 

6809/68000-68030 Save 70% 

SCULPTOR-a 4GL - Only from S.E. Media at these prices. OS-9 levels one and two (three GIMIX) 6809, 
all 68XXX OS-9 standard systems. Regular SCULPTOR versions 1.4:6. One of if not the most efficient 
and easy to develope DBMS type systems running under OS-9! A system of flexible keyed file access that 
allows extremely fast record and data retrieval, insertion and deletion or other programmed modifica- 
tions. Access by key or in ascending order, very fast. The system provides automatic menu generation, 
compilation and report generation. Practically unlimited custom input format and report formatting. A 
rich set of maintenance and repair utilities. An extremely efficient development environment that cuts 
most programming approximately 80% in development and debugging! Portable, at source level, to MS- 
DOS, UNIX and many other languages and systems. 

Standard Version: 1.6 6809 - $1295.00 

68000 $1295.00 

68020 $1990.00 






Due to a "Special One Time" Purchase, We 
Are Making This Savings Offer. Quantities 

Limited! 
Once this supply is gone - the price goes 

back up! 
System OS-9: 6809/68000-68030 

• Regular $1295.00 

ONLY $295.00 

S.E. MEDIA 



+ $7.50 S&H USA 
Overseas - Shipped Air Mail 
Collect 



r^ 




A 



POB 849 

5900 Cassandra Smith Road 

HIXSON, TN 37343 615 842-4601 

AVE - WHILE SUPPLIES LAST! 




28 



January '89 



68 Micro Journal 



Tdepfwnc: (615) $42-48X1 SOU tH 'EdS t Media 

Q$~$, 'Utu'JL'LX, •JL , £X,S'K''1>0S 
SO i J t VWWM£, 

til 'Hctisf Specify '\mr Ihvnitimj Sititan Hiui , .n L <k Siz? 



TdtK; 5HhiX)bbM> 



Sculptor 



Full OEM & Dealer Discounts Available! 



THE SCUUTOR SYSTEM 

• 1i-U> 



&mk flndCobd «* b* iiwri m *** 5cufc** doM to h* 



ncMowa 



DATA MCTtONARY 

Each Ay may hpw an* or ro« npru 
1 FwUi !*■*> *ktw a 



■Mm m FtfWMR«nHMb*(hnH 



»VwlM*ttfw*kii<jwtiiel.p* ilNweHfrMW 

*■»■ ifc«wil*«hiwiJ'ii utfikm hun ff-|jr . i liiiTi 

AN KTABLiShffD LEADER i J g*oJj*i»py»™ 

VufMMi]Mb|M]byp«tNltjMllwh<M«bdl ; S«rMf [W)^fi» 

■ rfhwafi itfTH^<wmJmM*n^wM**'"hif *m nut F « rmt > figfcjrfc itumrnwi m ^wwaoi^Mnii «*» 

#»«l*rjbmtfwinJh»niwtw< llw Ihm had m 1401 *nd -mnuw* M *t K _ 

m-«»fn rfMMtwk^^^^.M-^^^ _ DATA RLE STRUCTURE 

ta*.vi4»hMbiwi*pii.^rt*«-ik»b-r™ races rcatures cpkuh^w^*'^ 

onttaiTWfarttocllV ■■■■■ ■■■■■■■■ Ol^^.Mhp^Jfc,, 

SYSTEM IMPENDENCE 

Scvlpkt ■ piaMMiaa on Mnv d aft m^ nwfvHi ind tot 
mod i imi — nil wmnrn in kKhaj Nf> [ KJJ* Ow. K»*» ml 
WSthtc 



AIVUCATONPORTABLiTY 

h***\, J j»-*-»»hffc—"i«w^-^ 

'iliJtHfil'tmiUll it iinlfrEi Vuiotrtd 
,^*aMr*liak*wrV*rd «ttui«v« 
pruynm* run Ifwrn tin * tw^r nwfei um iv*M*i For 
WhM writer* **■ ran tint ttww ptodluK* tm ~*h » 
wkkr iwWpbr* thw •*■» Mi— ||fc*»» a y u m 
prtaaSbWv k^rth^y^hh^<«.hWsJ(«m*flf tiftC 
maaWa "v ufc*T v i u pp nav -j t» »**•* aUn pphIbpl 
havUhaaw* nundh *nvt ml ■ <fc ■ » iIkwpp vn «■ ■■ ■" «J 



SPEED AND EFFICIENCY 



INTERNAT10NALLV ACCEPTED 
FH upw-jiwnpprcdN^irMiMi^iv <k'i#»Ji »-« pmmc 
tnpTffW*c*iw^linai*J#*njfc*wi*ift*li^i^»*" fh* 
m*J»n ■ *n alaap nuk* I fcn i hiii dnwfc^wiwn* ifcw 
pyhw i nnmrtl Auajribaw #w flmrilcaam* lur-v* 
Sculpta ■ ifcawty M Ma* if- im 2D <«»*•**• 



Sculptor for 68020 
OS*9 & UniFLEX 
$995 




INDEXING TFOtNKXrt 

MK JaAl lb PfoflMrTi hmpt a*.** am. 
■ MMUltl 



INPUT DATA VAUDATWN 

LMfc 

C 'aa+ Hiw ha tndaaH Avwv 

ARITHMETIC OPERATORS 



RELATIONA1, OPtRATt»tS 

F«Mtb< 
LMlhun 






SPECW. FEATURLS 

■ ful 






MAXIMA AND MtMrHA 



~p*f MCDM JZyvT 

H PfT Bt I h rp^pi.m 




SCREEN FORM LANGUAT£ 

( ^HnMbHj w*t» ton* UPmjri«nwiMI(wiJi(**»i«l 



PROGRAMS 

0«*>« fpcovd Uyoul 

PRW& 



Huliaf4r Hn i ifwn n nrw prugrjini 




MUSTA.NG-020 Users - Ajsk For Your Special Discount! 



r 



n 



MUSTANG-020 



*$1.990 $398 $795 
*$1.295$259 $495 



PC/XT/ AT/MSDOS $695 $139 $299 



MUSTANG-OS *$1.295$259 $495 Call or write for prices on the following systems. 

XENIX SVS III & V. MS^NET. UNIX SYS lit & V. ATAKJ OS-9. 68K. UNOS. ULTKIX/VMS (VAX.REGAU. STKII1E. ALTOS. APRICORT. ARE-|E. ARM. 
STRONG. BLEASDALK. CIIARLTS I0VERS. GMX. CONVERGTECII. DEC. CIFER. EHUINOX. GOULD. I0>. HONEYWEU.. IHM. IN1EL. MEGADATA. 
MOTOROLA. NCR. NIXUORF. N.SrAK. OUVETTI /AT&T. ICL. PERKINS ELMER. PHILLIPS. PIXEL. PLESSEY. PLEXUS. IOSITWON. PRIME. SEflUKWr 
SIEMENS. SWTPC. SYSTIME. TANDY. TORCH. UNISYS. ZYLOG. ETC 

* For SPECIAL LOW SCLIJ*TOIt prltes t*sp<'flall> for BUOMMtXXX OS-9 Systems - Sim> S|m*- 
elal Ad this In.su*'. Itt'mefnber, **Wht'n ihcy are gone the prlee go«>s back up as ab«>vt'r* 

... Sculptor Will Run On Over 100 Other Types of Machines ... 
... Call for Pricing ... 

!!! Please Specify Your Make of Computer and Operating System !!! 



* Full IX'vHipjx-mmt Package 
•• Run Time C)n1y 
••• C Key F\tt Library 



O ■ OS.», S ■ SK'iK)S 
F ■ FLBt. V • tMPLU 
CO • Cotof r.ipil r os.« 
Off . Cobr nm, m t m n.tX 




South Txist Media 

5900 Cassandra Smith %/. ■ TfvQon. In. 57343 
rdtp^ru: (6lS)S424«00 idt^ SIQSCDS630 



niAsl.f rjrd 




•♦ Shipping •• . 

Mi 1* HiA. (ak DJ*> 

rw>«pi Sva*. am 5* 

Fmtpt \\rm*U \M II* 
Or (-Aft VKIprli, CMI 



•OS-* b ■ TndOMTk rf Mlmmmri ud Mn»m>-1U M< Un»1EX »r. I r.*rw.fk. u( lulinkjj SrJim lamidteiinr^lfOOS !■ » Tradwfll <t tttf-K Si<<wkt 



i v.otp. 



68 Mao Journal 



January '89 



29 



Tcfcpfwnc: (615) M2-4600 SOUtfl T.OSt ?Media 



Vek\: 5106006630 



OS-9, llm'/L'LX, 'JL'EX, S'K'VOS 



ASSEMBLERS 

ASTRUK09 (ram S.E. Media -■ A "Structured Assembler for the 6809" 
which requires the TSC Macro Assembler. 
FLEX. SKDOS. CCF - $99.95 
Macro Assembler Tor TSC -The FLEX. SKDOS STANDARD Assembler. 

Special -CCF $35.00; FLEX, SKDOS SHOO 
OSM Extended 6809 Macro Assembler from Lloyd I/O. — Provides local 
labels. Motorola S records, and Intel Hex records: XREF, Generate 
OS-9 Memory modules under FLEX, SK-DOS. 
FLEX. SKDOS. CCF. OS-9 $99 00 
Relocating AssembleriLlnking Loader from TSC.— Use with many of the 
C and Pascal Compilers. 

FLEX. SK DOS, CCF $150.00 
MACE, by GiahamTrott from Windnish Micro Systems -- Co-Resident 
Editor and Assembler, fast interactive A.L. Programming for small to 
medium-sized Programs. 

FLEX. SK.DOS. CCF . $7500 
XMACE - MACE w/Cross Assembler for 6800/1/2/3/8 
FLEX. SKDOS. CCF . $98.00 

DISASSEMBLERS 

SUPER SLEUTH from Computer Systems Consultants Interactive 
Disassembler; cxlnmcly POWERFUL! Disk File BiruMy/ASCH 
Examine/Change. Absolute or FULL Disassembly. XREF Generator, 
Label "Name Changer", and Piles of "Standard Label Names" for 
different Operating Systems. 
Color Computer SS-50 Bus (all wl At. Source) 
CCD (32K Req-d) Object Only $49.00 

FLEX. SKDOS $99.00 - CCF Object Only $50.00 UniFLEX $10000 
CCF. with Source $99.00 OS-9. $101.00 - CCO, Object Only $50.00 
6S010 SUPER SLEUTH - Similiar to S.Bil Version except written 
in "C". 

68010 Disassembler $100.00 FLEX, UniFLEX. UNIX. XENIX. 
MS-DOS. SK.DOS, OS-9 

OS-9I68K Object Only $10000 or with Source $200.00 
DYNAMITE* •- Excellent standard "Batch Mode" Disassembler. Includes 
XREF Generator and "Standard Isabel" Files- Special OS-9 options 
with OS-9 Version. 

CCF. Object Only $100.00 - CCO. Object OntyS 59.95 

FLEX. SKDOS . Object Only $100.00 . OS-9, Object Onty$150JX> 

UniFLEX Object Only $100.00 

CROSS ASSEMBLERS 

CROSS ASSEMBLERS from Computer System Consultants - Supports 
I802/5.Z-80. 6800/I/2/3/8/U/HCU.6804, 680S/HCO5/ 146805.6809/ 
00/01. 6502 family. 8080/5 . 8020</2/35/C35/39/ 40/48/C48/49/C49/5O/ 
8748/49, 8031/51/8751.33000 and 68000/68010 Systems. Assembler 
and Listing formats same as target CPU's format. Produces machine 
independent Motorola S-TcXL Includes Macro Pre Processor, Written in 
"C\ 68000 or 6809 'Macintosh.'Alari. FLEX. CCF. UniFLEX. OS-9. 
XENIX. UNIX. MS-DOS, SKDOS 

any object or source each .$50.00 

any 3 object or source $100.00 

Set of ALL object $200.00 - with source $50000 
XASM Cross Assemblers for FLEX. SKDOS from S.E. MEDIA - This set 
of 6800/1/2/3/S/8, 6301. 6502, 8080/5. and Z80 Cross Assemblers uses 
the familiar TSC Macro Assembler Command Line and Source Code 
formal. Assembler options, etc., in providing code for target CPU's. 

Complete set, FLEX. SK DOS only . $150.00 



CPU TYPE 


- Price each 




For: MOTOROLA 


INTEL 


FLEX9 


S150 


SI50 


SKDOS 


SI50 


J150 


OS-9/6809 


S150 


S150 


OS-9/68K 







CRASMB from IJjOYD I/O - Supports Motorola's, Intel's. Zilog's. and 
other's CPU syntax for these 8-Bit microprocessors: 6800. 6801. 6303, 
6804.6805,6809,6811 (all varieties); 6502, 1802/5. 8048 family, 8051 
family, 8080/85, Z8, Z80. and TMS-7000 family. Has MACROS, 
Local Labels. Ubel X-REF. 1-abel Length to 30 Oars. Object code 
formats: Motorola S-Rcaords (text). Intel HEX-Recoids (text). OS.9 
(buiaiy). and FLEX, SK-DOS (binary). Written in Assembler... e.g. 

VfaJaiL 

rice each: 

OTHER COMPLETE SET 
SI 50 J399 

SI 50 J399 

SI 50 S399 

J 432 

CRASMB 1632 from LLOYD I/O - Supports Motorola's 68000. and has 
same features as the 8 bit version. OS9/68K Object code Formal allows 
this cross assembler to be used in developing your programs for 
OS-9/68K on your OS-9/6809 computer. 

FLEX. SKDOS. CCF. OS-916809 $249.00 

COMMUMCA TIO/VS 

CMODEM Telecommunications Program from Computer Systems 

Consultants, Inc. - Menu-Driven; supports Dumb-Teiminal Mode, 
Upload and Download in non -protocol mode, and the CP/M "Modan7" 
Christenscn protocol mode to enable communication capabilities for 
almost any requirement. Written in "C 

FLEX, SK-DOS. CCF. OS-9. UniFLEX, UNIX. XENIX, MS-DOS, 
with Source $100.00 ■ without Source $50.00 
X-TALK from S.E. Media - X-TALK consists of two disks and a special 
cable, the hookup enables a 6809 SWTPC computer to dump UniFLEX 
files directly to the UniFLEX MUSTANG-020, This is the ONLY 
currently available method to transfer SWTPC 6809 UniFLEX files to a 
68000 UniFLEX system. Gimix 6809 users may dump a 6809 
UniFLEX file to a 6809 UniFI.EX five inch disk and it is readable by 
the MUSTANG-020. The cable is specially prepared with internal 
connections to match the non standard SWTPC SO/9 I/O Db25 
connectors. A special SWTPC St cable set is also available. Users 
should specify which SWTPC system he/she wishes so communicate 
with the MUSTANG-020. The X-TALK software is furnished on two 
disks. One eight inch disk contains S.E. Media modem program C- 
MODEM (6809) and the other disk is a MLSTANG-020 five inch disk 
with CMODEM (68020). Text and binary files may be directly 
transfer red between the two systems. The C-MODEM programs are 
unaltered and perform as excellent modem programs also. X-TALK 
can be purchased with or without the special cables, but this special 
price is available to registered MUSTANG- 020 users only. 

X-TALK Complete (cable. 2 disks) $99.95 

X-TALK Software (2 disks only) $69.95 

X-TALK with CMODEM Source $149.95 
XDATA from S.E. Media . A COMMUNICATION Package for tlic 
UniFLEX Operating System. Use with CP/M, Main Frames, other 
UniFLEX Systems, etc. Verifies Transmission using checksum or 
CRC; Re-Transmits bad blocks, etc. 

UniFLEX- $299.99 



AvalUhllUjUjrou 
0>OS.*,S.SK*DOS 
K.n.EX,U.lfnm.EX 
CCt . Colo CoHipoUT OS.* 
CCF. Color Core out* FJ-gX 



V 



South 'East 'Media 

5"900 CossardraSmith 'H- - Titr/on, In. 37343 




'■nsilin card 



•• Shipping •• 

«U 1* UJJA. (nlD.S2.5t) 
Fonlpa Surrwi AM 5* 
fVrim Airmail A4410% 
Or CO JK Sbloo In a Onlj 



*OS.«t»»TnMkre«T«. of MknwwrntMl M"ton>>»-«n,EX ml UniFLEX ir«TradimirlmirT«hnk»! SjuraiiCoimiluim-'SK'OOS !■» Trodfrmrtof SW-K S<*r-»r« imm Corp. 



30 



January '89 



68 Micro Journal 



Tele plume: (615) 842-4600 



South "East Media 

OS-9, 'llni'JL'LX, 'J'VLX, S'K'^OS 



TefcK; SlOtitXtotLW 



PROGRAMMING LANGUAGES 

PL/9 from Windnuh Micro Systems — By Graham Trou, A combination 
Editor Compiler Debugger. Direct lource-ioobject compilation 
delivering fail, compact, re-entrant. ROM-able, PIC. 8 A 16-bit 
Integers & 6 digil Real numbers for all real-wortld problems. Direct 
control over ALL System resources, including interrupts. 
Comprehensive library support; simple Machine Code interface; step- 
by-stcp tiacer for instant debugging. 500+ page Manual with tutorial 
guide. 

FLEX. SKDOS. CCF - $198.00 

PASC from S.E. Media - A FLEX9. SKDOS Compiler with a definite 

Pascal "flavor". Anyone with a bit of Pascal experience should be able 
to begin using PASC to good effect in short order. The PASC package 
comes complete with three sample programs: ED (a syntax or structure 
editor), EDITOR (a simple, public domain, screen editor) and CHESS 
(a simple chess program). The PASC package comes complete with 
source (written in PASC) and documentation. 
FLEX. SKDOS $95M 

WHIMSICAL from S.E. MEDIA Now supports Real Numbers. -Structured 
Programming" WITHOUT losing the Speed and Control of Assembly 
Language) Single-pass Compiler features unified , user-defined I/O; 
produces ROMable Code; Procedures and Modules (including pre- 
compiled Modules); many "Types" up to 32 bit Integers, 6-digit Real 
Numbers, unlimited siaad Arrays (vectors only); lmierrupt handling; 
long Variable Names; Variable Initialization; Include directive; 
Condi rional compiling; direct Code inrciiion: control of the Stack 
Pointer; etc. Run-lime subroutines inserted as called during 
compilation. Normally products 10% less code ikon PU9. 
FLEX. SKDOS and CCF - $195.00 

KANSAS C1TV BASIC from S.E. Media - Basic for Color Computer OS-9 
with many new commands and sub-functions added. A full 
implementation of the 1F-THEN-ELSE logic is included, allowing 
nesting to 255 levels. Strings are supported and a subset of the usual 
suing functions such as LEFTS. RIGHTS. MIDS.SrRINGJ, etc. are 
included. Variables are dynamically allocated. Also indudad are 
additional features such as Peck and Poke. A must for any Color 
Compiler user running OS-9. 
CoCoOS.9 $39.95 

C Compiler from WlndrusJi Micro Systems by James McCosh. Full C for 
FLEX, SK-DOS except bit-fields, including an Assembler. Requires 
the TSC Relocating Assembler if user desires to implement his own 
Libraries. 

FLEX. SKDOS. CCF ■ $295.00 

C Cempller from Inttul - FulIC except Doubles and Bit Fields, 

streamlined for the 6809. Reliable Compiler. FAST, efficient Code. 
More UNIX Compatible than most. 

FLEX. SKDOS. CCF. OS-9 (Level If ONLY). UniFLEX - $575.00 

PASCAL Compiler from Lucldala - ISO Based P Code Compiler. 
Designed especially for Microcomputer Systems. Allows linkage to 
Assembler Code for maximum flexibility. 
FLEX. SK. DOS and CCF $190.00 

OmegaSoft PASCAL from Certified Software - Extended Pascal for 
systems and real-time programming. 

Native 680TXV68O20 Compiier.$575 for base package, options available. 
For OS 9/68000 and PDOS host system. 

6809 Cross Compiler (OS-9ro8000 host) $700 for complete package. 



KBASIC . from S.E. MEDIA - A "Native Code" BASIC Compiler which is 
now Fully TSC XBASIC compatible The compiler compiles to 
Assembly Language Source Code. A NEW, streamlined. Assembler is 
now included allowing the assembly of LARGE Compiled K-BASIC 
Programs. Conditional assembly reduces Run-time package. 
FLEX, SKDOS. CCF. OS-9 Compiler lAstembler $99.00 

CRUNCH COBOL from S.E. MEDIA - Supports large subset of ANSD. 
Level 1 COBOL with many of the useful Level 2 features. Hull FLEX, 
SKDOS File Structures, including Random Files and the ability to 
process Keyed Files. Segment and link large programs at runtime, or 
implemented as a set of overlays. Ihe System require s 56K and CAN 
be run with a tingle Disk System. A vtry popular product 
FLfX.SK DOS.CCF $99.95 

FORTH from Stearns Electronic* - A CoCo FORTH Programming 
Language. Tailored to the CoCol Supplied on Tape, transferable to 
disk. Wrlitien in FAST ML Many CoCo functions (Graphics, Sound, 
etc.). Includes an Editor, Trace, etc. Provides CPU Carry Rag 
accessibility, Fast Task Multiplexing. Clean Interrupt Handling, etc for 
Ihe "Pro". Excellent "Learning" tooll 
Color Computer ONLY - $58.95 

FORTHBUILDER is a stand-alone target compiler (crosscompiler) for 
producing custom Forth systems and application programs. 
All of the 83-standard defining words and control structures are 
recogniwd by FORTHBUILDER. 

FORTHBUILDER is designed to behave as much as possible like a 
resident Forth interpreter/compiler, so that most of the established 
techniques for writing Forth code can be used without change. 
Like compilers for oOwr languages, FORTHBUILDER can opaaic in 
"batch mode". 

Ihe compiler racogniics and emulates target names defined by 
CONSTANT or VARIABLE and is readily extended with "com pile- 
lime" definitions to emulate specific target words. 
FORTHBUILDER is supplied as an executable command file 
configured for a specific hast system and target processor. Object 
code produced from the accompanying model source code is royalty- 
free to licensed users. 

FLEX. CCF, SKDOS- 599.95 

EDITORS & WORD PROCESSING 

JUST from S.E. Media -- Text Formatter developed by Ron Anderson; for 
Dot Matrix Printers, provides many unique features. Output 
"Formatted" Text to the Display. U« the FPRINT.CMD supplied for 
producing multiple copies of the "Formatted" Text on the Piinter 
INCLUDING IMBEDDED PRINTER COMMANDS (veiy useful at 
other rimes also, and worth the piicc of the program by itself). "User 
Configurable" for adaptin g to other Printers (comes set up for Epson 
MX-80 with Giafirax): up to ten (10) imbedded "Printer Control 
Commands". Compensates for a "Double Width" printad line. Includes 
the normal line width, margin, indent, paragraph, space, vertical skip 
lines, page length, page numbering, centering, fill, justification, etc 
Use with PAT or any other editor. 

* Now supplied as a two disk set; 

Disk* I JUST2CMD object fit*. 

JUST2.TXT PL9 sourceiFLEX. SKDOS - CCF 

Disk 02: JUSTSC object and source in C: 

FLEX, SKDOS. OS-9. CCF 

Ihe JTSC and regular JUST C source are two sepatate programs. JTSC 
compiles to a version that expects TSC Word Processor type 
commands, (pp .sp .ce etc.) Great for yourolder leal files. The C 



Ar»ltaNMj Uk»4i 

ll = W I 5 ■ Ml 'IX IS 

?. nex.li.ixn.il 

CO.CaHrt l i | > Ott 
CCF. Qatar Cany >m nix 




South 'East Media 

S900 Cassandra Smith 3tjf. - tfiQcm, In. 37343 




" Shipping *• 
ku 1% usjl. (pu«. sua) 

IWqji SarfW* A44 S» 

rat** tmiAMiH 

Or CO J*. Ski nit O t*j 



'OS * In Tndjirjrt af MktJ—n Jtid Mpfafntt'H.KX ««d L'titFLEX m Tr»*rrMrlmitTlttmk»l SKron Cwi»lmiU-»SIC»POS It I TraJmurt ■TKar-K jaggasfl Spina I jam 

68 Micro Journal January '89 



31 



Tekptone: {615} 842-4600 Sotitft T.OSt tMediil 



Teh*: $106006630 



OS-9, 'llni'JL'LX, lil'LX, $%**DO$ 



source compiles to a standard syntax JUST.CMD object flle. Using 
JUST syntax (,p ,u ,y etc.) With nil JUST functions plus seven) 
additional printer formatting functions. Reference the JUSTSC C 
source. For those wanting an excellent BUDGET PRICED woid 
processof. wiih features none of the ethers have. This is ill 

Disk (I) - PL9 FLEX ontf- FLEX. SKDOS A CCF - 1*9 95 
Disk Set (2) ■ FLEX, SKDOS A CCF A OS-9 (C version) - 169 95 

OS-9 68K000 compleu with Sourci - S79.95 
PAT from S.E. Media - A fuU future screen oiiented TEXT EDITOR with 
all the best of "PIE 1 "*. For those who swore by and loved only PIE. 
this is foryoul All PIE features andmuchmore! Too many features to 
list. And if you don't like these, change or add your own. PL-9 source 
furnished. "C" source available soon . Easily eoiifiguted to your CRT, 
with special config section. 

Regular FLEX. SKDOS tl29.it) 

• SPECIAL INTRODUCTION OFFER • 179.95 

SPECIAL PATUUST COMBO (wilt, source) 
FLEX. SK DOS 199 95 

OS-9 68K Version 1229 00 

SPECIAL PATlJUST COMBO 68K 1249 00 
Nose: JUST in "C" source available for OS-9 
CEDRIC from S.E. Media - A screen oriental TEXT EDITOR with 

availability of 'MENU' aid. Macro definitions, configurable 'permanent 
definable MACROS - all standard features and the fasten 'global' 
functions in the west. A simple, automatic terminal config program 
makes this a real 'no hassel' product, Only 6K in size, leaving the 
average system over 165 sectors for lexl buffer - appx. 14,000 plus of 
free mcmoiyl Extra fine for programming as well as text. 

FLEX. SKDOS 169.95 
BAS-EDtT from S.E. Media • A TSC BASIC or XBASIC screen editor. 
Appended to BASIC or XBASIC. BAS-EDIT is irouptrcnt to normal 
BASIC/XBAS1C operation. Allows editing while in BASIC/XBASIC. 
Supports the following functions: OVERLAY. INSERT and DUP 
LINE. Make editing BASIC/XBASIC programs SIMP1£! A GREAT 
Cunt and effort saver. Programmed love ill NO more retyping entire 
lines, etc Complete with over 25 different CRT terminal configuialion 
overlays. 

FLEX. CCF. SKDOS 139.95 
SCREDITOR III from Windrush Micro Systems - Powerful Screen- 

Oiiented Editor/Word Processor. Almost 50 different commands; over 
300 pages of Documentation with Tutorial. Features Multi-Column 
display and editing, 'decimal align" columns (AND add them up 
automatically), multiple keystroke macros, evert/odd page headers and 
foolers, imbadded printer corn roi codes, all justifications, "help" 
support, store common command series on disk, etc Use supplied "set- 
ups', or remap the keyboard to your needs. Except for proportional 
printing, this package will DO IT ALLI 
6900 or 6809 FLEX. SKDOS or SSBDOS, OS-9 - J/75 XX) 
SPELLB 'Computer Dictionary" from S.E. Media - OVER 150.000 words! 
Look up a word from within your Editor or Word Processor (with flu 
SPH.CMD Utility which operates in the FLEX. SKDOS UCS). Or 
check and update the Text after entry; ADD WORDS to the Dictionary. 
"Flag" questionable words in the Text, "View a wotd in aontext" before 
dunging or ignoring, etc. SPELLB lint checks a "Common Word 
Dictionary", then the normal Dictionary, then a "Personal Word list", 
and finally, any "Special Word List" you may have specified. SPELIJ3 
also allows the use of Small Disk Storage systems. 

FLEX . SKDOS and CCF ■ 1129.95 



STYLO-GRAPH from Great Plains Computer Co. - A lull-screen oriented 
WORD PROCESSOR •- (uses the 51 x 24 Display Screens on CoCo 
FLEXOR-DOS. or PBJ Wordpak) Full screen display and editing; 
supports the Daisy Wheel propor tion al printers. 
NEW PRICES 6809 CCF and CCO - 199.95. 
FLEX. SKDOS or OS-9 ■ 1179.95, UnifLEX- 1299.95 
STYLO -SPELL from Great Plains Computer Co. - Fast Computer 
Dictionary. Complements Stylograph. 

NEW PRICES 6809 CCF ond CCO - 169.95. 
FLEX, SKDOS or OS-9 - 199.95. UniFLEX- 1149.95 
S1YLO- MERGE from Great Plains Computer Co. - Merge Mailing Lislto 
"Form" Letters, Print multiple Files, etc., through Stylo. 
NEW PRICES 6809 CCF and CCO - 159.95, 
FLEX. SKDOS or OS-9 . 179.95. UniFLEX- 1129.95 
STYLO-PAK — Graph + Spell + Merge Package Dcailll 

FLEX. SKDOS or OS-9 - 1329 95. UniFLEX . 1U9.95 
OS9 68000 1695.00 

DA T ABASE ACCOVNT1NG 

XDMS from Westchester Applied Business Systems 

FOR 6809 FLEX or SKDOS (5/8") 

Up to 32 groups/fields per record I Up to 12 character file names! Up to 1024 
byte records! User defined screen and pint contrail Process filesl Form 
ftlesl Conditional execution) Process chaining! Upward/Downward file 
linking! File joining! Random file virtual pagingl Buiit in utilities! Built 
in text line editor! Fully session oiiented! Enhanced formal Boldface, 
Double width, Italics and Underline supported! Written in compact 
structured assembler I Integrated for FAST execulicnl 
XDMS IV Data Management Syrian 

XDMS IV it a brand new approach to data management. Il not only permits 
users to describe . enter and retrieve data, but also to process entire files 
producing customized reports, screen displays and fue output. 
Processing on consist of any of a set of standard high level funaions 
including record »td field cleakn , sorting and aggregation, lookups in 
other files, special processing of record subsets, custom report 
formatting, totaling and subtoteling, and presenuticei of up to three 
related files as a "database" on user defined output reports. 
POWERFUL COMMANDSI 

XDMS-IV combines the functionality of many popular DBMS software 
systems with a new easy to use command set into a single integrated 
package. We've included many new features and commands including a 
set of general file utilities. The processing commands are Input-Process - 
Outpul (IPO) which allows almost instant implementation of a pnxz u 
design. 

SESSION ORIENTED I 
XDMS-IV is session oriented. Enter "XDMS" and you are in instant 

cururumd of all the features. No more waiting for a command to load in 
from disk! Many commands are immediate, such as CREA1E (fde 
definition). UPDATE (file editor). PURGE and DELF1E (utilities). 
Others are process commands which are used to create a user process 
which is executed with a RUN command. Either may be enleicd into a 
"process" fue which is executed by an EXECUTE statement. Processes 
may exeo) le other processes, or them selves, either cundiiionall y or 
uneondi lionall y. Menus and screen prompts are easily coded, and entiic 
user applications can be run without ever leaving XDMS-IV 



o • < is.a. t . sk -nos 
!■■ . n i;x. i: . t.'nin.nx 

(X* ■ Oftor Omputor OS.* 
CCF - Okx r.irpuur FLEX 




South Tost Media 

5900 CiusasiiraSmith ty. ■ Mbyon, Tn. 37543 



•• Shipping •• 
AM 1* U&A. (•*>. tut) 
SWe«» ferbu AM 5* 
ft>rde> AlnmllAdd 10* 
Or cojxSMealat Ontj 



■OS-S III Tr»ilninr> «' Mkrmnn .nJ Mnti* ol» «H V X .nJ I'nltTUX iri Tmljm»fklutT«llll>t»l S rmmj CaMulUBU. *S K 'DOS tnjnjtnmri of Sl.rK Wlirt Sy.l.rm Cora. 



32 



January '89 



68 Micro Journal 



Tckpfwne: (6 1 5) $42-4600 SOUtfl *EO$ t ^Mcdld 



Tdc\: 5Wb006ti30 



QS9 t ilni'JL'Ui, 'JL'CX, S'K'IKiS 



ITS EASY TO USE1 

XDMS-IV keeps data management simple 1 Rather than design i complex 
DBMS which hide* the tnie nature of die data, we kept XDMS1V file 
onioned. The user view of dm relationships is presented in reports and 
screen output, while the actual dau resides in easy to maintain files. 
This aspect permits cuitnrruxcd presentation and repots without 
complex redefinition of the database files and structure. XDMS-IV may 
be used for a wide range of applications from simple recotd 
management systems (addresses, inventory ...) to integrated database 
systems (otder entry, accounting...) 

The possibilities arc unlimited... 
FOR SKW FLEX or SK-DOS(5"/8" Dink) $249.95 

UTILITIES 

Bask09 XR«f from S.E. Media -■ This Basic09 Cross Reference Utility is a 
Basic09 Program which will produce a "pretty printed" listing with each 
line numbeied, followed by a complete cross referenced listing of all 
variables, external procedu res, and line numbers called. Also includes a 
Program List Utility which outputs a fast "pretty piinted" listing with 
line numbers. Requites Basic09 or RunB. 

OS-9 & CCO object only - S39.95; with Source - $79.95 

BTree Routines . Complete set of routines to allow simple implementation 
of keyed files - /or your programs - running under Basic09. A res! time 
saver and should be a pan of evety seiious programmers tool-box. 
OS-9 & CCO object only - $89.95 

Lucldata PASCAL UTILITIES (Requires Pascal ver 3) 

XREF - produce a Cross Reference Listing of any text; oriented to Pascal 
Source. 

INCLUDE - Include other Files in a Source Text, including Binary - 
unlimited nesting. 

PROFILER -- provides an Indented, Numbered, "Stiuctogtam" of a Pascal 
Source Text File; view the overall structure of latge programs, program 
integrity, etc. Supplied in Pascal Source Code; requires compilation. 
FLEX. SKDOS. CCF — EACH 5" - $40.00. 8' - 550 00 

DUB from S.E. Media - A UnlFLEX BASIC decom pller Re Create a 
Source Listing from UnlFLEX Compiled basic Programs. Works with 
ALL Versions of 6809 UniFLEX basic. 
UniFLEX - $219.95 

LOW COST PROGRAM KITS from Southeast Media The following kits 
are available for FLEX, SKDOS on either 5" or g" Disk. 

1. BASIC TOOL-CHEST $29.95 
BL1STER.CMD: pretty piinler 
UNEXRE F.BAS: line crots-referenccr 
REMPAC.BAS. SPCPAC.BAS. COMPAC.BAS: 
remove superfluous code 

S1HIP.BAS: superfluous Line-number* stripper 

2. FLEX, SKDOS UTILITIES KIT $39.99 
CATS. CMD: alphabetically -sorted dircctoty listing 
CATD.CMD: daie-soned directory listing 
COPYSORT.CMD: file copy . alphabetically 
COPYDATECMD: file copy, by dale-oider 
FILEDATE.CMD: change file creation dale 

LNFO.CMD (A DVFOGMX.CMD): tells disk attributes A contents 
REUNK.CMD (A RELHVK82): re-orders fragmented free chain 
RESQ.CMD: undeletes (recovers) a deleted Tile 
SECIORS.CMD: show sector order in free chain 
XL. CMD: super text lister 



3. ASSEMBLERS/DISASSEMBLERS UTILITIES $39.95 
LINEFEED.CMD: 'modularise' disassembler output 
MATH. CMD: decimal, hex, binaiy, octal conventions 

A tables 

SKIP.CMD: column stripper 

4. WORD . PROCESSOR SUPPORT ITI1UTIES $49.95 
FULI-STOP.CMD: checks for capitalization 
BS1YCIT.BAS (.BAC): Stylo to dot-matrix primer 
NECPRINT.CMD: Stylo to dot-matrix printer filler code 

5. UTILITIES FOR INDEXING $49.95 
MENU.BAS: selects requited piogram from list below 
INDEX. BAC: word index 

PHRASES. BAC: phrase index 

CONTENT.BAC: table of contents 

INDXSORT.BAC: fast alphabetic son routine 

FORMA TER. BAC: produces a 2-column formatted index 

APPEND.BAC: append any number of files 

CHAR.BIN: line reader 
BAS1C09TOOLS consist of 21 subroutines for Basic09. 
6 were wriuen in C Language and die remainder in assembly. 
All the routines are compiled down to native machine code which 
makes them fast and compact. 

1. CF1LL — fills a siting with characters 

2. DPEEK - Double peck 

3. DPOKE - Double poke 

4. FPOS - Current file position 

5. FSIZE -- File size 

6. FTRIM — removes leading spaces from a suing 

7. CETPR - returns the current process ID 

8. CETOPr - gels 32 byte option section 

9. CETUSR - gets the user ID 

10. CTIME - gets die time 

1 1 . INSERT - insert a string into anothe r 

1 2. LOWER - converts a string into lowercase 

13. READY - Checks for available input 

14. SETPRIOR --changes a process priority 

15. SETUSR - dianges the user ID 

16. SETOPr - set 32 byte option packet 

17. STIME - sets the time 

18. SPACE -- adds spaces to a string 

19. SWAP — swaps any two vatiables 

20. SYSCALL - system call 

21. UPPER - converts a string to uppercase 

For OS-9 - $44.93 - Includes Source Code 

SOFTOOLS 

The following programs arc included in object foim for immediate 

application. PI/? source code available for customuation. 

READ-ME Complete instructions for initial seHcp and opaaion. Can even 

be printed out with die included text processor. 
CONFIG one time system configuration. 

CHANCE changes wotds, characters, etc. globally to any text type file. 
CLEANTXT converts text Tiles to standard FLEX, SKDOS files. 
COMMON compare two text files and reports difference*. 
COMPARE anotiter check file that reports mis-matched lines. 
CONCAT similar to R.EX.SK- DOS append but can also list files to screen. 
DOCUMENT for PU9 source files. Very useful in examining parameter 

passing aspects of procedures 



Anll»Mllt;Ut«>4> 
O.OSl.S.SK'DOS 
r.VLEK.U. UnlFLEX 
CCt . Cue* CotnpuUf OS.* 
CCF ■ Color Computer FLEX 




South 'East Media 

S900 Cassandra Smith <Kf. ■ ffufson, Tn. 37343 




master card 



•• Shipping •• 

Aid J* UiX (nlo. ItMl 
Pbnlan Surtn Ado S* 
Forriao Alrnsll Add ll« 
Or CO.D.SoloplB|On!j 



»<W-lll>Tr»ittm»ftof Mkf.mr t «idM.itnrpU. , W.tX»BdU«llT J P»nT Snt»n» Our. 



68 Micro Journal 



January '89 



33 



rekpkonc: {615)842-4600 SOUtft T.CLSt ^Mcdla 



Tele*: 5106006630 



OS-9, llni'JL'LX, '} L'LX, S'K'OOS 



ECHO cchot lo either screen or file. 

FIND an impiovcd find •omman d with -pattern" rnuchin g and wildcards. 
Very useful 

HEX dumps filet in both hex and ASCD 

INCLUDE a f le copy program thai will accept " ndudes" of other disk files. 

KVV1C allowi routing each word, on each line to the beginning. Very useful 
n a ton program, etc 

I LSTDIR a directory lining program. Not tuper, but better than CAT. 

MEMSORT a high-speed text file toner. Up to 10 fields may be sorted. 
Very fist. Very useful. 

MULTICOL width of page, number of columns may be specified. A 
MUST! 

PACE similar lo LIST but allows for a page header, page width and depth. 
Adjust for CRT screen or printer u set up by CONFIG. A veiy smart 
piinl driver. Allows pi nter control commands. 

REMOVE a fast file deleter. Careful, no prompts issued. Zap, and its gone! 

SCREEN a screen listing utility. Word wraps text lo f t screen. Screen depth 
may be altered at run lime. 

SORT a super version of MEMSORT. Ascending/descending order, up lo 10 
keys, case over-ride, son on n"* word and sort on characters if Trie is 
small enough, torts in RAM. If large file, ton it constrained lo size of 
your largest disk capacity. 

TPROC a small but nice sex t formatter. In s is a complete formatter and has 
functions not found in other formatters. 

TRANSLIT sons a file by x keyfrelds. Checks for dupl cations. Up to 10 
key I les may be used. 

UNROTATE used with KWIClhis program reads an input file and unfolds 
it a line at a time. If the file has been sorted each word will be 
presented in sequence. 

WC a word count ul Iity. Can (MUM words, characters or lines. 

NOTE: this set of utilities consists of 6 5-174" disks or 2 8" disks, with 
source (PL9). 3 5-1/4" disks or I 8" disk without source. 
Complete set SPECIAL INTRO PRICE: 
5-1/4" with source FLEX or SK-DOS - $129.95 
without source - $79.95 
8" with source - 579.95 • without source $49.95 

FULL SCREEN FORMS DISPLAY from Computer Systems Consultants • 
- TSC Extended BASIC program suppons any Sei al Terminal with 
Cursor Control or Memory-Mapped Video Displays; substantially 
extendi the capabilities of the Program Designer by providing a table- 
driven method of describing and using Full Screen D splays. 
FLEX. SK-DOS and CCF. UniFLEX - 125.00. with Source - SSOM 

SOLVE from S.E. Media - OS -9 Levels I and U only. A Symbolic Object/ 
Logic Veiificaiion & Examine debugger. Including inline debugging, 
disassemble and assemble. SOLVE IS THE MOST COMPI.ETE 
DEBUGGER we have seen for ihe 6809 OS-9 series! SOLVE does it 
all! With a rich selection of monitor, assembler, disassembler, 
environmental, execution and other miseellanerai s commands, SOLVE 
it the MOST POWERFULtool-kii item you can own! Yet, SOLVE is 
simple lo use! With complete documentation, a snap! Everyone who 
has ordered this package has raved! See review • 68 Micro Journal - 
Dtaesnber 1985. No "blind" debugging here, full screen displays, rich 
and complete in information presented. Since rev cw in 68 Micro 
Journal, this it our fatten mover! 

Levels 1 A 11 only - OS 9 S69.95 



DISK UTILITIES 

OS- 9 VDisk from S.E. Media - For Level I only. Ute the Extended 

Memory capabil ly of you r SWTPC or Gimix CPU card (or simila r 
formal DAT) for FAST Program Compiles. CMD execution, high speed 
inter -process communications (without pipe buffers), etc. - SAVE thai 
System Memory. Virtual Disk tize it variable in 4K increments up to 
960K. Some Assembly Required. 

Level I OS-9 object S79.95; with Source 1149.95 

O-F from S.E. Media - Wr lien in BASIC09 (with Source), ncludes: 

REFORMAT, a IJASIC09 Program thai reformats a chosen amount of 
an OS-9 disk lo FLF.X. SK-DOS Formal so it can be used normally by 
FLEX. SK-DOS: and FLEX, a BASIC09 Program that does the actual 
read or wr le function lo the special O-F Transfer Disk; uicr-fn enJly 
menu driven. Read [he FLEX, SK-DOS Directory . Delete FLEX, 
SK-DOS Files, Copy both direct ons. etc. FLEX, SK-DOS users use 
the special disk just like any other FLEX. SK-DOS disk 
OS-9 - 6909168000 S79.9S 

LSORT from S.E. Media - A SORT/MERGE package for OS-9 (Level I & 
I! only), Sorts records with fixed lengths or variable lengths. Allows 
for either ascending or descend ng son. Soiling can be done in either 
ASCII sequence or alternate collating sequence. Right, left orno 
justification of data fields available. LSORT includes a full set of 
comments and errors messages. 
OS-9 SSS.00 

KIER from S.E. Media - IIIER is a modern hiirarchat storage system for 
users under FLEX, SK-DOS. ll answers the needs of those who have 
hard disk capabilities on their systems, or many files on one disk - any 
size. Using KIER a regular (any) FlEX, SK-DOS disk (8- 5- hard 
disk) can have sub directories. By ihis method the problem s of 
assigning un que names lo files is less burdensome. Different files with 
Ihe exact tame name may be on Ihe same disk, as long as ihey are in 
different directories. For ihe Winchester user this becomes a must. Sub- 
directories are the modem day solution that all current laige systems 
use Each director; looks lo FLEX, SK-DOS like a regular file, 
except they have the extension '.DIR'. A full set of directory handling 
programs are included, making the operation of HIER simple and 
straightforward. A special install package is included to install HIER lo 
your particular version of FLEX, SK-DOS. Some assembly required. 
Install indicates each byte or reference change needed. Typically - 6 
byle changes in source (furnished) and one assembly of HIER is all that 
is required. No programming lequircd! 
FLEX - SK-DOS S79.95 

COPYMULT from S.E. Media -- Copy LARGE Disks lo several smaller 
disks. FLEX. SK-DOS utilities allow the backup of ANY size disk to 
any SMALLER size diskettes (Hard Disk to floppies, 8" to 5", etc.) by 
simply inserting diskeues as requested by COPYMULT. No fooling 
wiih directory deletions, elc. COPYMULT.CMD understands normal 
"copy" syntax and keeps up with files copied by maintaining directories 
for both host and receiving disk system. Also includes BACKUP.CMD 
lo download any size "random" type file; RESTORE. CMD lo 
restructure copied "random" files for copying, or rccopying back lo ihe 
hotl system; and FREELDVK.CMD as a "bonus" utility thai "relinks" 
the free chain of floppy or hard disk, eliminating fragmezsusicn. 

Completely documented Assembly language Source files included. ALL 4 
Programs (FLEX. SK-DOS. 6" or S m ) S99SO 



Anita MM.;! 
O.OS.t, J. SK-DOS 
F.KLEX. U. ttoUXEX 
cc» ■ CM* Carnpuur og.» 

CCF • Color CanrWUr PLCk 



•U.S.? If ft I r vftmftr* orMkrmnt* and 




S out ft "East 'Media 

5900 CassajufruSmitA %&". - Hvacm, In. 37343 



matitrrtard 1 



•• Shipping •• 
Add I* USA. (ruin. SIS*) 
Fonts* Siafmm Add 5* 
Fords* Airmail A« le* 
Or COH. Sblpfttne Oatj 



34 



Mntarolft.'HriX .nd UnlKl EX .r.TnJ.fn.rt,orT«hiik.l ■■JTftlnniOvnmlHh1..-SKTH)'j 1.1 Ttadjmara aTStar-KSonwirt SjarnmCmp. 

January '89 68 Micro Journal 



Telephone; {615)842-4600 SoUtft T.OSt 94edia 



'fete*: 5106006630 



(V-A ilni'JtJLX, 'JL'LX, S7CDQS 



COPYCAT from Luridala - Pascal NOT required. Allows reading TSC 
Mini-FLEX. SK-DOS. SSB-DOS68, and Digital Research CP/M Disks 
while opcraling under SK-DOS . FLEXI.O, FLEX 2.0.or F1£X 9.0 
with 6800 or 6809 Systems. COPYCAT will not perform miracles, but. 
between the program and the manual, you stand a good chance of 
accomplishing a transfer. Also includes some Utilities to help out. 
Programs supplied in Modular Source Code (Assembly language) to 
help solve unusual problems. 
FLEX. SKDOS and CCF 5"-$S0.00 FLEX. SKDOS 8"-$6S.OO 

VIRTUAL TERMINAL from S.E. Media - Allows one terminal to do the 
woik of several- The user may start as many as eight tasks on one 
terminal, under VIRTUAL TERMINAL and switdi back and fcnih 
between tasks at will. No nead to exit each one: just jump back and 
foilh. Complete wilh configuration program, The best way to keep up 
with those background programs. 

6809 OS-9 A CCO - object only - $49.95 

FLEX, SK-DOS DISK UTILITIES from Computer Systems Consultants - 
Eight (8) different Assembly Language (with Source Code) FLEX, 
SK-DOS Utilities for every FLEX, SK-DOS Users Toolbox: Copy a 
File wilh CRC Errors; Test Disk for errors: Compare two Disks; a fast 
Disk Backup Program; Edit Disk Sectors; Linearize Free-Chain on the 
Disk; print Disk Identification; and Son and Replace the Disk Directory 
(in sonad older). -- PLUS— Ten XBASIC Programs including: A 
BASIC Resequencer wilh EXIRAs over "RENUM" like check for 
missing label definitions, processes Disk to Disk instead of in Memory, 
etc. Other programs Compare, Merge, or Generate Updates between 
two BASIC Programs, check BASIC Sequence Numbers, compare two 
unsequenced files, and 5 Programs for establishing a Master Directory 
of several Disks, and sorting, selecting, updating, and printing paginated 
listings of these files. A BASIC Cross-Referoice Program, written in 
Assembly Language, which provides an X-Ref listing of Ihe Variables 
and Reserved Words in TSC BASIC. XBASIC, and PRECOMPILER 
BASIC Programs. 

ALL Utilities include Source (either BASIC or AX. Source Code). 
FLEX. SKDOS and CCF - $50.00 
BASIC Utilities ONLY for UniFLEX - ■ 13000 

MS-DOS to FTEX Transfer Utilities to OS-9 For 68XXX and CCOS 9 
Systems Now READ - WRITE . DIR - DUMP - EXPLORE FLEX & 
MS-DOS Disk. These Utilities come with a rich set of options allowing 
the transfer of text type files fiomAo FLEX A MS-DOS disks. *CoCo 
systems require the D.P. Johnson SDISK utilities and OS-9 and two 
dr ves of which one must be a "host" floppy. 

•CoCo Version: $69.95 6SXXX Version $99 95 

MISCELLANEOUS 

TABULA RASA SPREADSHEET from Computer Systems Consultants - 
TABULA RASA is similar to DESKTOP/PLAN: provides use of 
tabular aompulalion schemes used for analysis of business, sales, and 
economic conditions. Menu-driven: extensive report-geneiation 
capabilities. Requires TSC's Extended BASIC. 
FLEX. SKDOS and CCF. UniFLEX- $5000. with Source . $100.00 
DYNACALC - Electronic Spread Sheet for Ok 6809 and 68000. 
UniFLEX- $395.00. FLEX, SKDOS. OS-9 and SPECIAL CCF ■ $250.00 
OS-9 68K ■ $299.00 



FULL SCREEN INVENTORY/MRP from Compiler Systems Consultants 
Use the Full Screen Inventory Systan/Maierials Requirement Planning 
for maintaining inventor es. Keeps item field file in alphabetical order 
for easier inquiiy. Locale and/or print records matching partial or 
complete item, description, vendor, or attribute: find backorder or 
below slock levels. Piintouts in item or vendor order. MRP capability 
for the maintenance and analysis of Hierarchical assemblies of items in 
Ihe inventory file. Requires TSC's Extended BASIC. 
FLEX. SK-DOS and CCF. UniFLEX ■ $50.00. with Source . $100.00 

FULL SCREEN MAILING LIST from Computer Systems Consultants -• 
The Full Screen Mailing IJst System provides a means of maintaining 
simple mailing lists. Locate all records matching on panial or complete 
name, city, state, zip, or attributes for Listings or Labels, etc. Requires 
TSC's Extended BASIC. 
FLEX , SKDOS and CCF. UniFLEX- $50.00, with Source ■ $100.00 

DIKT-TRAC Forecaster from S.E. Madia - An XBASIC program that plans 
a diet in tains of either calories and percentage of carbohydrates, 
proteins and fats (C PG%) or grams of Carbohydrate. Protein and Fat 
food exchanges of each of the six basic food groups (vegetable, bread, 
meal, skim milk, fruit and fat) for a specific individual. Sex, Age, 
Height, Present Weight, Frame Size. Activity Level and Basal 
Metabolic Rate for normal individual are taken into account. Ideal 
weight and sustaining calories for any weight of the above individual 
arc calculated. Provides number of days and daily calendar after weight 
goal and caloric plan is determined. 

FLEX. SKDOS ■ $59.95. UniFLEX . 189.95 



GAMES 

RAPIER • 6809 Chess Piogram from S.E. Media - Requires FLEX, 

SK-DOS and Displays on Any Type Tenninal. Features: Four levels of 
play. Swap side. Point scoring system. Two display board s. Qiange 
skill levcL Solve Checkmate problems in 1-2-3-4 moves. Make move 
and swap sides. Play white or black. This Is one of the strongest 
CHESS programs running on any microcomputer, estimated USCF 
Rating 1600* (better than mast 'club' players at higher levels) 
FLEX. SKDOS and CCF - $79.95 
NEW 

MS.DOSIFLEX Transfer Utilities For 68XXX and CoCo* OS-9 Systems. 
Now Read, Write. DIR. Dump and Explore FLEX A. MS-DOS Disks. 
Supplied wilh a rich set of options to explore and transfer text type files 
frorrvta FLEX and MS-DOS disks. *CoCo OS-9 requites SDISK 
utilities & two floppy drives, 
CCO $69.95 68XXX OS-9 $99.95 

MS-DOS and Macintosh 
Software at Discounted Prices 

"Call for prices, it'll be worth the savings." 

(615) 842-4600 



A>*IUMJI(; Usenet! 
O .OSS. S. SK'tKJS 
tr.KUEX,U-U*ll-TtX 
act . cater ConrHitir os.» 
CCF ■ Celtr CMipulir FUX 




South 'Last 'Media 

5900 Cassandra Smith %£. • tfb(son, In. 37343 



master rarrjl 



•• Shipping •♦ 

Add J* U.SA. (ml«. S2.50) 
rsrris* Surfw Add 3* 
Fwrita Airmail Add 1»« 
Or CO JX Shipping Ontj 



■OS.* In TridrrwrturMklwirund Mni.iriil».*M Y,\ »n<l I'nlM.tlX ire Tredwmrlmir Technical Srilninrjinullaiilj.''iK*DO<: li »Tr»dcm»rtl of SHI- KSafrwart Sjatf Cwp, 



68 Micro Journal 



January '69 



35 



First, we draw up a blank table, with all headers, including Z, and start off with in both the "Relays Operated" and "Code" 
columns. We'll study X's reaction to the info "No relays operated so far". If X=0 there are still no relays operated, so we'll 
pass on Code-0 to Y, but if X=l we record I to signify 1L ("One relay operated so far"). 

The creation of code- 1 forces us to open up tine- 1 , where, if X=0, a set of 1 is formed, and as this is a breach of specs we'll 
cut off power with a "-". But if X= I, we have a sequence of 2 so far, so we'll record 2 to signify 2L. 
Now we have a code- 2 to analyse! If X=0 a complete set of 2 has been formed, so we'll enter a 3 to signify S2 (a set of 2), 
but if X=l we now have 3 in sequence, so we'll enter 4 to signify 3L. Note that we now have TWO undefined codes, namely 
3 and 4, so we open up lines 3 and 4! Let's do code-3 first. 

If X=0, the code S2 still applies and we enter a 3 in this column, but if X= I we'll be starting a second set (forbidden), so we 
cut off power, llien to line-4. 

In this line, if X=0 we've completed a set of three, which we'll indicate with code-S to stand for S3 (a set of 3), as this is a 
new situation, but if X= I we've "gone over the top" with 4 relays, so we cut off power with a "-". This line forces us to open 
up line-5, where, if X^), the situation is still S3, so we enter a 5 in this column, but if X=l then, obviously, a second set is 
under way, so once more we'll cut off power. 

No new code-numbers means we've come to the end of our design, so let's switch our viewpoint to that of the output, by 
checking Z against the "Relays Operated" column. Zero relays or one relay immediately before Z certainly don't call for an 
output, but either 2 relays immediately in front or a set of 2 "down the line somewhere" indicate a need for a "1 " in the Z- 
column, as does 3 relays immediately in front, or a set of 3 down the line. 

Equivalences, here we come!! There are only two lines in Group-O, but the "-" in line- 1 right away makes them incompat- 
ible. So let's study Group- 1. Line-2 is incompatible because a 4 CANNOT be combined with a "-". Lines 4 and 5 are 
certainly compatible, but how about line-3? Let's compare it with line-4, and say "Lines 3 and 4 would match if only 3 and 5 
were compatible. Now let's compare 3 and S! Lines 3 and S would match if only 3 and 5 were compatible, (see column X=0 
in all cases). We can't go any further, and as we haven't come across an INCOMPATIBILITY, then all three are equivalent, 
so we'll roll up 3, 4 and S into a new line-3, and make all 4s and Ss into 3. We could alternatively have gone the route of 
rolling-up line-S into Line-4, as they're definitely equivalent, and making all Ss into 4, then checking lines 3 and 4 by saying 
"Lines 3 and 4 would match if only 3 and 4 were equivalent. End of run, no incompatibilities, therefore they are so!" 




Diagram 93 

Either way, we end up with Diagram 92b, wheie you'll notice I've drawn your attention to Line- 2. Ihis is a special case, 
because both columns of X contain the same 3-entry, and in terms of relay contacts means that input-line-2 is connected to 
output-line-3 through both a NC and a NO-contact. In other words, whether X is operated or not, input-line-2 will be 
connected to output-line-3, and we can save ourselves these two contacts by making a direct connection instead, as I've 
shown in the prototype of Diagram 93. 

NEW PROTOTYPING RULE 

And so we have a new rule for prototyping 

If the same code occurs in both columns X=0 and X= I in any one line, a direct connection will be made between the input 
and output lines concerned. 

Note that power is taken off at both output-lines 2 AND 3 as column-Z has a 1 -entry in BOTH these lines. Are you begin- 
ning to get the hang of it now? Let's do another example to give you a better picture. 



36 



January "89 68 Micro Journal 



HERAT1VE NETWORKS - EXAMPLE 3 

Design a prototype cell for a circuit of "n" relays which will give an output iff there is exactly one set, which MUST contain 
an odd number of relays. 

That's certainly different from what we've encountered so far, but as we thrive on variety let's begin with all column 
Readings marked out, and the codings for line-0 inserted, as shown in Diagram 94a. So ... if code-0 comes into X and X=0 
the same code goes out, but if X=l we'll send out code- 1 to indicate "Odd/L" (meaning "an odd number immediately in fiont 
of you"). 



feUyS 
Operated 


C«le 


3 



< 
1 


Z 











1 




Od<0- 


1 


2 


3 


1 


S/Odi 


2 


2 


- 


1 


Even/U 


3 


- 


1 

i 





(a) 




<K> 



— > 



Diagram 94 

In line-1. if X=0, we have our odd set. which we'll identify with code-2 and S/odd. If X=l we have an even set SO FAR, 
which we'll code as 3 andEven/L. This, of course, means opening up two new lines, 2 and 3. 

Considering line-2. if X=0 the state of affairs remains unchanged at S/odd, but if X= 1 we're starling a second set, so let's cut 
off the power. And in line-3, with an even-numbered string of relays so far, if X=0 we've formed an even SET, so we'll cut 
off power here too. But, if X=l . we're back to an odd-numbered string so far, so we'll go back to line-1 ! Agreed? 
Finally, looking at things from Z's viewpoint, we'll insert Is in both lines I and 2. There are no equivalences (we must be 
gelling better at this son of thing!), so we draw the prototype cell of Diagram 94b directly from 94a. The input power comes 
in at Line-0, and is laken off at output lines 1 and 2 of the final cell, just as it came off at lines 2 and 3 in Example-2. 
One more example to wiap Ihis whole thing up. 

I1ERATIVE NETWORKS - EXAMPLE 4 

Design a prototype cell for a network of "n" relays which will give an output if there are EXACTLY two sets of any size 
whatsoever. 

Ihis looks interesting, so let's go for it! But first note that we're concerned with the number of SETS this time, not the 
number of RELAYS, so we head our info-column in Diagram 95a wiih "Sets Opciaied". Commencing on Line-0, if X=0 the 
same code goes out, and if X=l we have the staitof Sell, which we'll call code- 1. In line-1, if X=0 we've completed this 
set, so we'll use code 2 for IS ("one set completed"), but ifX=l we're still working on our first set, so we insert code-1 here. 
Now for line-2! If X=0 we still have one set down the line (code-2), but if X=i we're now stalling on our second set. Let's 
code Ihis as 3 and "IS + 1L", meaning, of course, "one set complete, plus a second starting immediately in front of you". 
Moving to Line-3, if X=0 we've formed our two sets, which we code as 4, and 2S, whose meaning is quite clear. However, if 
X= I we're merely enlaiging Ihe size of this second set so we'll stick with code-3. We still have to analyse line-4, where, if 
X=0, ihe situation is unchanged at code -4. but if X=I we're beginning work on a third set (foibidden), so we cutoff power. 
And here the table naturally grinds lo a halt 

Ihe output-Z is only interested in two complete sets, so we'll insert I s in lines 3 and 4. Again there arc no equivalences, so 
the prototype cell shown in Diagram 95b can be drawn directly from 95a. 

Ihis concludes the NORMAL technique for constructing iterative networks, though next lime we'll lake a quick look at a 
moie advanced method (not too often used) which MAY reduce the number of contacls in a prototype cell, but certainly 
shouldn't increase them. So now you can all try your hand at 1EST FOURTEEN- A coming up? FOUR1EEN-B will unfold 
next time. 



68 Micro Journal 



January '99 



37 



TEST FOURTEEN-A 

Design the prototype cell for a circuit of "n" relays which will give an output 

(a) iff there is only ONE set, consisting of either ONE or THREE relays. 

(b) iff AIX sets consist of ONE or THREE relays, and there's at least one set. 

(c) iff ALL sets consist of ONE or THREE relays, OR if no relays are operated. 

(d) iff there is EXACTLY one set, containing at least TWO relays. 

(c) iff there are exactly TWO sets, containing exactly TWO relays each. 

Iric following are NOT COMPULSORY .... but why not tiy them? 

(0 iff there are exactly TWO sets, one with ONE relay and the other with TWO. 
(g) iff there is exactly ONE set of THREE relays, but there may be other sets of any other size, 
(h) ifr there is exactly ONE set of two tJNOPERATED relays! Watch this one!! 

(i) if thcieare any number of sets of any size, EXCEPT that output must be cutoff iff there is among them exactly ONE set 
of ONE or TWO relays. 

HINT : Design for a circuit which WILL give an output for one set of cither one or two relays, and then graphically comple- 
ment it. 
(j) iff there are exactly TWO sets, one of TWO relays and the other of any other size. 

Hope you enjoy these! Just to ease your load, I'll set up camp and cook a meal while you folks get scribbling on your pads! 

...End of Mile 17, sitting at marker "Mile 18" 



FOR THOSE WH 




68 MICRO 
JOURNAL 



TM 



3B 



January '89 



ee Micro Journal 



Forth 



A Tutorial Series 



By: R. D. Lurie 
9 Linda Street 
Leominister. MA 01453 



FORTH09: A FORTH for OS-9 on the 6809 



Here it is at last! Dan Johnson has 
come through for us just like the 
proverbial cavalry at the end of a John 
Wayne movie. He has written a 
completely full-fealured FORTH-83 for 
OS-9. 1 hope thai you will pardon mc 
while I drool as I type this, since I am 
most excited with Dan's opus. 

This product is called "FORTH09", and 
it has absolutely no relationship to the 
public domain minimal program of the 
same name which I discussed in my 
August, 1988, column. 

General Description 

FORTH09 is a greatly expanded 83- 
FORTH. It meets all of the require- 
ments of the standard, plus it has a 
number of its own expanded features. 
In fact, FORTH09 has so many features 
that I cannot possibly do all of them 
justice in a shoit review. As one should 
expect from a quality product, 
FORTH09 includes an assembler and a 
screen editor. 

The assembler covers all of the 6809 
addressing modes, and, of couise, it 
usesRPN, so beginners will think that 
the statements look a little confusing. 
However, it takes practically no lime to 
become used to that. The relative 
branches are handled in a high-level 
format, litis way, the programmer does 
not have to woiiy about whether a 
branch is shoit or long. The manual 
contains an entirely adequate explana- 
tion of how this works. 



The screen editor comes configured for 
3 standard terminals and for the 
CoCo3. Just choose the type that you 
are using and compile the proper 
screens. If your terminal doesn't (it one 
of the current choices, you can find 
instructions on making the changes to 
one of the existing forms or on writing 
your own. 

There is a kemal of code which must be 
loaded at startup, but the rest of the 
code is in screens which can be 
compiled as needed. Therefore, one can 
tailor a version of FORTH09 to a 
specific job without carrying a tot of 
excess code which does nothing but 
occupy RAM or ROM. The manual 
says that by choosing to do so, efficient 
ROM code can be geneiatcd (I have no 
way to bum a ROM, so I can't check 
this, but I don't doubt it!) 

The important OS-9 calls are available 
directly from FORTH09, so this would 
eliminate a lot of the need for assembly 
language routines. In fact, I am such a 
klutz with OS-9 that I was amazed 
when I could use the calls so easily. 
Certainly, I had a lot less Double than I 
had with C or BASIC09! Fuilheimore, 
I hope to use FORTH09 to teach 
myself more about how OS-9 operates. 
Talk about "instant graiifi cation"! ! ! 



Scope 

FORTH09 is the epitome of wide 
usefulness. The same version works on 
both Level I and Level II OS-9. The 
only reason I can think of for having 
two working copies of the system disk 
is that you do need a different boot for 
Level 1 and Level II. Otherwise, it 
would be difficult to know which 
version you were using. As I see it 
now, I think that FORTH09/Level 1 
would be most useful for machine 
control and FORTH09/Level II would 
be best every where else. 

As I mentioned before, FORTH09 has 
been designed to work well on virtually 
any 6809 machine running OS-9. 1 only 
have OS-9 for the CoCo, so I can't 
check this for sure, but it looks fine to 
me from reading the manual and the 
screens. Other than disk format, the 
only differences that I anticipate would 
arise from the peculiarities of a 
particular terminal con figuration. 

I will confess that after I received my 
review copy of FORTH09, 1 finally 
realized just how much I HATED OS- 
9! Well, that has suddenly changed. I 
can't say that OS-9 is my favorite 
opeiating system, yet, bulFORTH09 
has certainly turned the corner for me. 



68 Micro Journal 



January '69 



39 



Detailed Description 

FORTH09 differs from the usual FIG 
model in seveial important ways. First 
of all, this is a subroutine-threaded 
code, rather than the string of execution 
addresses which are indirectly loaded 
and executed by NEXT . Whenever 
speed is important, the compiler can be 
signaled to compile a definition in line, 
rather than as a subroutine jump. 1 nis 
is not routinely done, because it can 
make a significant diffeience in the 
length of the code, but it is a dynami- 
cally available option. 

Two separate dictionaries are main- 
tained by FORTH09. They are called 
the PRIMARY and the SECONDARY 
dictionary. The significance is that it is 
possible to SAVE only the PRIMARY 
dictionary, thus creating a minimum 
sued block of code which can stand 
alone, as in ROM. However, the 
SAVESYS command saves both dic- 
tionaries, which is important since the 
assembler and editor are entirely in the 
SECONDARY dictionary. Following 
Dan's recommendation, I normally 
select the SECONDARY dictionary for 
all of the definitions which I write and 
then do a SAVESYS ; after all, disks 
are cheap! 

Each dictionary header is separate from 
its code. I don't know what difference 
that would make to the average user, 
but it would make it virtually impos- 
sible for somebody to reverse-engineer 
a ROM made with FORTH09. 

Screen II 



Dan has provided a large number of 
additional definitions beyond 83- 
FORTH. This includes a pretty 
complete line of double-number words, 
so there would probably be no need for 
a floating-point package; 32-bit num- 
bers generally exceed the capacity of 
most floating-point packages, and 
scaling should be used for the big 
number/little number problem, anyway. 

Dan has exeited a little bit of author's 
license in changing some of the 
familiar FORTH words to fit in with 
his ideas. As examples, he has DDLIP 
instead or 2DUP and ENDIF instead of 
THEN as his preferred forms. How- 
ever, he has provided the common 
synonyms, also, so this does not present 
a problem. In fact, he has provided the 
word EQU which generates a synonym 
for any existing word, so you can 
customize you own package, if you 
want to. All of these changes are 
adequately coveted in the glossary and 
will never cause you a problem, unless 
you are working with the minimum 
possible memory. 

Caveats 

A couple of points should be made 
about the differences between 
FORTH09 and some other FORTHs, 
which might otherwise fall between the 
cracks. All of the pioblems mentioned 
here are related to transportability of 
programs and data between various 
FORTHs. If you are not concerned 
about that, then you can skip the next 
few paragraphs. 



Decimal point within a number: It is 
usually acceptable to enter a number 
containing a decimal point, even 
t hough that decimal point will be 
ignored during integer math operations. 
However, the location of the decimal 
point is saved in a variable, usually 
called DPL , for use in some later 
operations. I have not been able to 
make FORTH09 accept a number 
containing a decimal, no matter how I 
have tried. Furthermore , DPL is not 
ptovided, so you will have to use your 
own. As I write this, I don't know how 
to "fix" it, but I will ask Dan to look 
into the matter. He has said that he 
intends to release a floating-point 
package, which should eliminate the 
whole problem, but it can interact 
unfavorably with existing programs 
which use math opeations. 

Flagging double numbeis: All other 
FORTHs flag the keyboard input of a 
double number by terminating the entry 
with a ".", but FORTH09 does litis by 
proceeding the first digit with a "#**. I 
can't see that this would affect the 
portability of FORTH code, since the 
only change is duting keyboard entry, 
and not during program execution. The 
only problem might come from reading 
data from a text file on disk, but even 
that appears to be a little far-fetched. 
All in all, I think that the only real 
problem could come from the ftustia- 
tion of having to learn another way to 
enter keyboard data, but even I learned, 
so you can, too. 



\ Test saitples 

SECONDARY 

: EXO { - ) 

CR ." This is the first example." CR ; 

: EX1 ( - ) 

CR . " This is the second exanple." CR ; 

: EX2 ( - ) 

CR . " This is the third exanple." CR ; 

: EX3 ( - ) 

CR ." This is the fourth exanple." CR ; 



\ FDL092188 10 

II 
12 
13 

14 
15 
16 

17 
18 
19 

HO 
111 
112 

113 
|14 
115 



40 



January '89 



68 Micro Journal 



Screen #2 




\ The first experiment RDL092186 


10 




U 


: TABLE1 


12 


CREATE 


13 


DO£S> SWAP 2* + g EXECOTE ; 


14 




15 


TABIE1 EXPERIMENT1 \ create the vector table 


16 


) EXO EX1 EX2 EX3 [ \ load the table 


\^ 



Vector table generation: There are two 
common ways to generate vector jump 
tables; one way is shown in Screen #2 
and the other in Screen #3. At this 
point , I simply want to say that the 
method shown in Screen #2 will crash 
in FORTH09. but the method is Screen 
#3 works Tine. This appears to be a 
function of the way FORTH09 is built, 
and is not something that can be 
changed. On the other hand, I think that 
the method shown in Screen #2 is very 
poor programming practice and should 
be killed, any way. However, many 
programs exist which use the scheme of 
Screen #2, so watch out for it! 

Shadow screens: FORTH09 requires 
that you use shadow screens. Unless 
you can think of some trick to play on 
the system, these screens are only 
useful for documenting the correspond- 
ing "regular" screen. There is no real 
harm, here, except that I don't like to 
be forced into an unfamiliar documen- 
tation scheme. I much prefer to 
document directly on the program 
screen so that I can see the comment 
and the code at the same time. This is 
only possible with shadow screens 
when you have a 132-column display. 
Also, I admit to a rather silly prejudice 
against "wasting" so much disk space. 

SOURCE: D. P. Johnson, 7655 
Southwest Cedarcrest St, Portland. OR 
97223. $150 (plus $3 S/H). 



VECTORED JUMP TABLES 

In my last column. I discussed forward 
addressing and showed a rather elegant 
way to generate a vectored jump table. 
I would now like to discuss another 
way which used the CREATE ... 
DOES> construct; it is not as elegant, 
but is much simpler to type. However, 
it will not do the job of cross-selecting 
menus which was discussed last lime; 
tiy it and you will sec why. 

Screen # 1 simply defines the four 
words to be selected by our jump table. 
These definitions must be written 
before the table is defined, but can be 
written after the defining woids 
TABLE1 and TABLE2 . 1 have placed 
them in the first screen simply for 
convenience in illustrating the point. 

Screen #2 uses CREATE ... DOES> to 
define a "defining word" called 
TABLE 1 . Notice that CREATE simply 
leaves an open space to be filled by the 
vectors at a later date. No specific 
amount of space is reserved at this 
lime, so we have not specified how 
large the table is to be. The DOES> 
specifies what is to be done at run-time 
with the data in the table, but not how 
the data arc to get there. 

Line #6 of Screen #2 actually creates 
the vector table. Notice that this line is 
actually a command line which is 
executed when the screen is first 
loaded, and it is not a pait of a defini- 
tion to be executed later. The format of 
the command is simply its name 
TABLE 1 . which invokes its name, and 
EXPERIMENTS , which is the name of 
the jump table. Nothing could be 
simpler, which probably accounts for 
the popularity of this format. 



All that is necessary to load the table 
named EXPER1MENT1 is the com- 
mand shown in line #7. This must 
immediately follow the table invoca- 
tion, or the scheme won't work. This 
line works because ] immediately turns 
on the compiler and loads into the 
dictionary the execution addresses of 
the following words. The [ immediately 
switches back to the interpreter, 
thereby slopping the addition of 
execution addiesses to the dictionary. 

Screen #3 starts off pretty much the 
same way, but CREATE takes a 
number from the Data Stack and 
allocates the actual storage space for 
the table during compilation. This way, 
the size of the table is set explicitly and 
is fixed as soon as TABLE2 is invoked. 
Therefore, it is not necessary to fill the 
table immediately, but it can be done at 
any time. This is a great programming 
convenience. 

The action of DOES> in this screen is 
exactly the same as in Screen #2. You 
can see this with a Data Stack diagram, 
which you should construct if you need 
more help understanding the following 
explanation. The definition is entered 
with the address of the first element of 
the table as the top of the stack and the 
offset into the table as the next element 
of the stack. Therefore, the SWAP is 
necessaiy to get the offset into the right 
place. 2* multiplies the offset by the 2 
bytes taken by a 16 -bit address and + 
adds the result to the starting address. 
@ calls the execution address and 
EXECUTE jumps toil. 



68 Mcro Journal 



January '69 



41 



Screen #3 



\ The second experiment 



RDL092188 



TABLE 2 
CREATE 
DOES> 



2* A1J>CT 

SWAP 2* + 8 EXECUTE 



4 TAHLE2 EXFERIMENT2 



S create the vector table 



EXO > EXPERIMENT2 >BODY 2*+ 

EX1 * EXPERIMENT2 >BODY 12* + 

EX2 « EXPERIMENT2 >BODY 2 2* + 

EX3 ' EXPERIMENT2 >BODY 3 2* + 



\ load the table 



10 

II 
12 
13 
14 
15 
16 

\~l 
16 

19 

110 

HI 



The vector table is created by the 
command in line 86. The first com- 
mand must be a number which sets the 
size of the lable, 4 in ihis case. This 
means that there will be 4 addresses 
stoied in a lable named EXPERI- 
MENT . Again, ihis is pretty much the 
same as in Screen #2, with the excep- 
tion of the size of the table being on the 
Data Slack before calling TABLE2 . 

The remainder of Screen #3 simply 
shows one way to fill the vectored 
jump table named EXPERIMENTS . 
Notice that 1 have used an expanded 
format for each of the four commands 
required to load the four execution 
addresses into ihe table called EX- 
PERIMENT . This makes the com- 
mands self-documenting, which is a big 



help. Il shows which address goes 
where in the table. It also makes it easy 
to change Ihe table later, but Ihis 
smacks too much of self-modifying 
code to be to my taste. It is much more 
difficult to modify TABLE I , because 
it is harder to find which address went 
wheie (this may be an advantage!?!). 

Either scheme, Screen #2 or Screen #3, 
will work with most versions of 
FORTH, but not wilh FORTH09. You 
can only use the procedure in Sciecn #3 
wilh FORTH09. However, the algo- 
rithm implemented in Screen #3 is 
better for several reasons, so I recom- 
mend it, no matter which FORTH you 
are using. 



CORRECTION 

A line got left out of the definition of 
DO-IT in the last column. The first line 
of Ihe definition should be 

R> DROP 

followed by the test of the definition. 
Wiihout this addition, the Return Stack 
will eventually overflow. I did not 
catch the error simply because I did not 
cycle through the example enough 
limes. Dave Angel caught this for me 
when I showed him the code. This just 
proves that, no matter how hard I uy 
and how hard 1 test. I cannot guarantee 
thai my code will always be perfect!?! 



FOR THOSE WH< 




68 MICRO 
JOURNAL 



TM 



42 



January '69 



68 Micro Journal 



t n 



Mac-Watch 

For Those 
Needing (o 



68 MJ 




The Macintosh™ Section 
Reserved as 

A place for your thoughts 

And ours 

Mac- Watch 



A Review of ThePerfectWORD™ 

Software for Bible Study and Research 



By James £. Law 
1806 Rock Bluff Rd. 
Htiason TN 37343 

If I said that the Macintosh can be all things to 
all people, you would no doubt think the case to be 
somewhat oveistated. Even Apple's Mac evangel- 
ists wouldn't go quite that far. It Is true, however, 
that the Macintosh (and other computers) can 
serve an almost unbelievably wide variety of needs 
from spreadsheets for Accountants to data bases 
for a Zinc mining company. It should be no 
surprise then, to note that software Is now avail- 
able to support the serious Bible student and 
researcher. 

Many people believe that the Bible is the in- 
spired word of God. and that It tells men how to live 
In order to be saved. That makes it worthy of 
careful study. Fully understanding Its message, 
however, takes considerable diligence and calls for 
the use of every tool at one's disposal. The apostle 
Peter said that Paul wrote "some things hard to be 
understood." Most Bible students won't have any 
difficulty in agreeing that the Bible Is a challenging 
book. 

Star Software. Inc. (229 Live Oaks Blvd. Cas- 
selbeny. Florida 32707) has developed several 
software packages to assist students and re- 
searchers In studying the Bible. One of these. 
ThePei feet WORD, is a fast and powerful search 
engine for finding, displaying, saving, and printing 
verses meeting specific search criteria. I have used 
this program frequently over the last two months 
and In this review. I'll share my experiences with 
you. 



Getting Started 

When ThePerfectWORD Is opened, a display 
window and an entry window appear. You enter 
search criteria In the entry window and the verses 
identified in the search will be shown in the display 
window. The entry window can be hidden when not 
in use to provide more room for text. The text can 
be displayed In 9. 10, or 12 point type, and the 
spacing between verses can be adjusted. 

Show Me the Verse 

One of the simpler uses of ThePerfectWORD is 
to view selections of text. Select the "Show" mode, 
enter "James 2:24," and Instantly this verse ap- 
pears on the screen. This portion of the program 
Is extremely flexible and allows precise selection of 
Just the text you want to see. For example, you 
might want to see Romans 4:1-25; Hebrews 11:1; 
11:8-19; and James 2: 14-26 at the same time. No 
problem. Just enter the desired verses In an easy 
to understand format and they all appear. Consid- 
erable abbreviating of book names Is allowed. The 
window has standard zoom button, scroll bars, 
and a grow box to view text when the selection is 
more than can be seen at one time. 

Where Does It Say. . .? 

By far the most Important capability of The- 
PerfectWORD is Its ability to find verses which 
satisfy prescribed search criteria. The feature is 
perfect when you want to know where the verse Is 
that says that Jesus is a "propitiation" (Just enter 
the word "propitiation" In the entry window.) A 
more common use might be to view all the passages 
that mention a specific word (e.g. . "marriage"). You 
are not limited to searching on words, but can also 
search on phrases (e.g.. "in Christ"). 

ThePerfectWORD searches are FAST! For 
example, a search of the entire Bible for the word 
"covering" resulted In 43 verses being found in 
about 6 seconds. A search of Ihe entire Bible for 



68 Micro Journal 



January '60 



43 



verses that contain both the word "faith" and the 
word "grace" took on the order of 3 seconds. The 
time required forthe search seems more related to 
the number of "hits" than the scope of material 
being searched. Several months ago, I reviewed a 
competing Bible study program, and at the time 
was favorably impressed with its speed. Little did 
I know! It quickly became apparent that ThePer- 
fectWORD was an order of magnitude faster than 
its most advertised competitor, 

ThePerfectWORD allows you to set the limits of 
your search. You may enter specific starting and 
stopping points. A quicker method for setting 
search limits Is to check Quick Set dialog boxes 
such as Old Testament. Poetry. Entire Bible. 
Gospels, or Epistles. There is a block for almost all 
searches that I make, so detailed entiles were 
rarely needed. 

The PerfectWORD provides great flexibility in 
specifying search criteria. A string of different 
words or phrases may be entered and connected 
with symbols for "or" . "and", or "not." For ex- 
ample, by entering "faith, grace" you will be shown 
all veises which contain both the word "faith" and 
the word "grace." Similarly, the entry of "Adam,- 
Eve" will display all verses which mention "Adam" 
but do not mention "Eve." Parentheses may be 
used for nesting in more complex searches. This 
provides great power to the researcher In indicat- 
ing the subjects to be identified in the seaich. 
Searches involving complex logical strings are. of 
course, much slower than simple word 
searches.Note that the logic statements are not 
necessarily limited to words within a given verse. 
For example, If the same sentence used both the 
terms "grace" and "faith" yet the words fell in 
adjacent veises. these verses could still be Identi- 
fied in the search example cited above. ThePer- 
fectWORD allows the context range for input logic 
statements to be specified. For example, the user 
can say. "I want to see the places where "grace" 
and "faith" are mentioned within 3 verses of each 
other (or 1 verse, or 2 verses, etc.). 

The result of searches may be displayed in two 
formats. Either the references only may be en- 
tered (i.e.. the book, chapter, and verse) or the 
references with text may be displayed. An serious 
limitation of IhePeifectWord Revision 1.0 was 
that only 100 verses with text could be viewed. 
Foitunately, this limitation was removed in Revi- 
sion 2.0 by allowing the full text of searches to be 
displayed regardless of the number of verses in- 
volved. 



Let's See it In Context 

Often, It will be useful to see the veises satisfy- 
ing your search criteria in context, that is. with 
some preceding and following verses displayed. 
With other Bible search programs, you will have to 
pull out your Bible and look each verse up. Not so 
wtth ThePerfectWORD. Simply double click any 
verse and tt Is instantly displayed within a separate 
window in context. You can have ThePerfectWORD 
display from 1 to 10 verses before and after the 
verse of interest. This Is a most useful feature since 
the division of the Bible into verses often causes 
breaks in the middle of sentences and ongoing 
thoughts. 

Word Counts 

Have you ever wondered how many times a 
particular word Is used in the Bible? If so. your 
curiosity can be satisfied. In seconds. ThePer- 
fectWORD can count all the occurrences of a word 
in the designated range. For example "Jesus" Is 
used 983 times in the Bible, and Paul uses the word 
"law" 78 times in Romans. ThePerfectWORD can 
search for all words except about 50 very common 
words like "and", "the", and "a." 

You can count a string of words at the same 
time. Enter each word you want counted separated 
by a space, comma, or semicolon, and the word 
count for each will be displayed. 

ThePeifectWORD can even count words based 
on entiy of an abbreviation. For example, if you 
wanted to count all forms of the word "belief", you 
could enter "belle." and the words "believe, believes, 
belief, believeth. believest, believing, and believed" 
would be counted and the totals for each displayed. 
The ability to use abbreviations to widen a count is 
also useful in accurately scoping out a search for 
verses meeting the search cilteila. In the above ex- 
ample, a search for "belle." would result in verses 
containing any ofthe above words being displayed. 

Side by Side Comparisons 

One of the most impressive ThePerfectWORD 
features is its ability to open numerous windows at 
once. For example, you can display Joel 2 in one 
window, open a new window for Daniel 2, and then 
display Acts 2 to see passages on prophecy and 
prophecy fulfilled. Similarly, you could display at 
the same time, passages from each of the four 
Gospels dealing with a particular parable. You can 
do the same thlngwith the results of word searches. 
For example, in one window you could display all 
passages from Romans with the word "faith" and in 
another window all passages mentioning "works." 

Window management Is easy. The Windows 
menu lists all currently open windows and allows 



44 



January '89 



68 Mcro Journal 



you to activate any of them. If you select Tile 
Windows from the Display menu, all text windows 
are neatly arranged side by side. With this feature 
you can easily view up to 5 windows at once. If you 
select "stack windows." the windows are placed In 
a staggered fashion behind one another so that 
while only one window Is fully exposed, the titles of 
all windows are displayed. Regardless of the option 
chosen, any window clicked becomes active and 
may be scrolled to see more text. 

Saving Your Work 

It's likely that oiten you will want to save the 
results of your research. ThePerfectWORD pro- 
vides several possibilities. First, you may export 
the contents of windows through the clipboard. 
Second, you may save any window as a text file 
which can be read by your word processor or page 
layout program. Finally, you may create a verse 
file. 

The verse file option saves the results of your 
research as a list of verses without the accompany- 
ing text. This makes such files extremely compact. 
When you open such a file, you will have the option 
of viewing only the references (I.e.. the book, chap- 
ter, and verse) or also see the text. The Open. New. 
Save, and Saue As commands work wllh Verse 
Filesjust like other files. 

Using the appropriate menu selections, you 
can add or delete verses to a verse file and can 
combine multiple verse files together. You can 
select the Sort and Merge option to remove dupli- 
cate verses and put the remaining ones In Bible 
order. You may also add a descriptive header to 
each verse file. This description will be saved, 
displayed, and printed with the verse file. 

Printing Options 

ThePerfectWORD window may be printed by 
selecting Print from the File menu. You may 
choose font size (9, 10. or 12) and vei'se spacing, 
but may not specify font style. If you want to alter 
the format si^iiflcantly. you will need to transfer 
the Information via a text file or the clipboard to 
some other application. 

General Information 

ThePerfectWORD can be used with the Macin- 
tosh 512E. Plus. SE. and II. Supposedly, you can 
operate with only one disk drive if you have at least 
a megabyte of RAM, but I suspect you would need 
the patience of Job to do so. Any program whose 
files occupy 2.6 megabytes calls for a hard disk for 



FOR THOSE WH 



efficient operations 

ThePerfectWORD is such a simple program 
that you will rarely need to refer to the manual. 
When you do. you will generally find It to be 
adequate. I did have some problems understand- 
ing how to use the verse file feature, but in retro- 
spect, this was probably a result of my failure to 
read carefully enough and not that the manual was 
unclear. 

Other Related Product! 

The text modules used In this review were the 
King James Version and the New International 
Version. Each English language translation is $75. 
Star Software also offers a Greek translation for 
$150 and a Hebrew translation for $180 transla- 
tions. These enable Bible researchers to perfoim 
searches on the original Greek or Hebrew word.. 
The Hebrew version Is entered and displayed from 
right to left on the screen since this language Is 
read and written In this manner. These nonEngllsh 
translations were examined only briefly during this 
review since my only language Is Southern Eng- 
lish. These products appeared to perform as adver- 
tised. 

Do Tou Need ThePerfectWord? 

I have used ThePerfectWORD frequently over 
the last two months and find It to be an exceptional 
program. Serious Bible students or researchers 
with access to a Macintosh cannot afford to be 
without this program. It does Its thing so well that 
concordance books are made hopelessly obsolete. 
The speed of ThePeifectWORD Is truly awesome. I 
had a number of concerns about limitations In 
Revision 1 of ThePerfectWORD but Star Software 
corrected all of them In Revision 2 leaving me little 
to gripe about. Users of Revision 1 should contact 
Star Software about upgrading to the new version 
since It is so much Improved. 

As a Macintosh software reviewer. I have ac- 
cess to a fairly wide variety of software. Most of It. 
however, gathers dust after the review. I can 
assure you that such will not be the case with 
ThePerfectWORD. 

ThePerfectWORD Is a quality product which 



deserves your attention. 1 iccommend tt 



EOF 



#J NEED TO KNOW 



68 MICRO. 



JOURNAL 



TM 



68 Micro Journal 



January *89 



45 



Intelligent Write / Erase Cycle Stress of 
MC68HC11 EEPROM Devices 



Robert J. Pinteric 

Motorola, Inc. 

6501 WM Cannon Drive West - OE312 

Austin, TX 78735 

(512)440-2077 



Devices with EEPROM memories are 
tested in several different ways to scieen 
units which would fail prematurely in an 
end-user's system. These tests typically 
include functional, pattern, data retention, 
and write / erase (W/E) cycling endur- 
ance testing. The fonner of these tests 
can be peifoimed in a relatively short 
period of time using a high speed MOS 
test system, resulting in a low test cost 
per unit However, the repeated W/E 
cycle stress of an EEPROM device lakes 
a significant amount of time to complete. 
Screening units in this fashion using a 
high speed test system would result in 
high test costs per unit and low test 
throughput. 

In order to minimize test costs and 
increase test thioughput of Motorola 
MC68HC1 1 EEPROM Microcontroller 
units (MCU), a system has been devel- 
oped which can simultaneously peifoim 
W/E cycling on up to 50 devices. These 
systems utilize the on-chip subsystems of 
the MC68HC1 1 in a unique way which 
enables each device to literally test itself. 
The system software enables W/E cycling 
of five different MC68HC 11 MCU 
devices: MC68HC1 1 A8, 
MC68HC81 1 A2, MC68HC81 1E2, 
MC68HC1 1E9. and the MC68HC1 1F1. 
Although these systems are primarily 
used to peifoim production W/E cycling, 
it is also used to perform engineering 
evaluations. Furthermore, the system can 
be software configured to function as an 
MC68HC1 1 EEPROM gang program- 
mer. 



ROM - 12K BY1ES 



EEPROM -512 BYTES 



RAM -512 BY1ES 



PE7- 
pes - 
pes - 

PE4 - 
PE3 - 
PE2 - 

PE1 - 

peo- 

V HH_ 



V RL" 

RESET 
JOES' 



JCTAL ■ 

EXTAL ■ 



MODA 
fUHf 

MODB — 

^STBY > 



A/D 



FUUSB ACCLTMULAT 



TIMER 



I— l XT) 



i-eriouic intkrhi 



COP WATCHDOG 



IT 



PA] 
OC2 
OC3 
0C4 

/IC4 
IC1 
JC3 
IC3 



SPI 



SS* 

SCK 
MOSI 

MISO 



SCI 



TxD 
RxD 



> < 



"♦ft 



PA7 
PA6 
PAS 
PM 
PA3 
PA2 
PA1 
PAO 

PD5 
PCM 
PD3 
P02 

PDI 

I-1XJ 



M6811 CPU 



INTERRUPTS 



OSCILLATOR 



MOIJE 

nutci 



ADtJRKSS / DATA BUS 



n 



******* v 



Li A il 



nl ** 



HANDSHAKE I/O 



******** 



uuufj; 



DATA I) I RUCTION : 



lom-c 



1 I || I I I I A i A A A 1 1 A 
TYTTTTTT TtTTTTTl' 



** 



1 £ 



SINGLK 
CHIP 



8 |Sexpa 



FIGURE 1 MC68HC11E9FN BLOCK DIAGRAM 



DEVICE NUMBER 


ROM 


RAM 


EEPROM COMMENTS 


MC68HC11A8 


8K 256 


512 


ORIGINAL 68HC11 


MC68HC11E9 


12K 


512 


512 MORE ROM t 


MC68HC811A2 


NONE 256 


2K 


NO ROM 


MC68HC811E2 


NONE 25 6 


2K 


4 INPUT CAPTURES 


MC68HC11F1 


NONE 


IK 


512 NON-MUX BUS 



RAM 



TABLE 1 



MC68HC11 FAMILY OF DEVICES. 



46 



January *89 



68 Micro Journal 



MC68HC II Overview 

In order to fully comprehend Ihe 
function of the W/E cycle sysiem, a biief 
overview of the MC68HC1 1 is necessaiy. 
As mentioned previously, there are five 
diffeient members of ihe M68HCI 1 Fam- 
ily, each with different memory sizes and 
features, as listed in Table 1. For sim- 
plicity, the MC68HC1 1E9 MCU will be 
discussed. The MC68HC11E9 MCU, 
shown in Figure 1 , contains 12k bytes of 
mask programmable ROM, 512 bytes of 
RAM.and512bytesofEEPROM. In 
addiiion to memory, the MC68HC1 1 
contains an 8 bit 8 channel A/D con- 
vener, two serial pons, a 16 bit free 
running timer wilh 3/4 input capture lines 
and 5/4 output compare lines, a real time 
interrupt, and a pulse accumulator. The 
MCU utilizes an enhanced M6801 in- 
struction set wilh 88 additional opcodes, 
including divide and bit manipulation 
instmclions. 



The EEPROM memory is enabled 
when ihe EEON bit in ihe CONFIG 
register is set. The write (or program- 
ming) mechanism for the EEPROM is 
controlled by user programmable bits in 
ihe PPROG register. The erased state of 
the EEPROM is $FF, thus programming 
changes a bit from a 1 to a 0. Program- 
ming and erasure of the EEPROM relies 
on an internal high-voliage charge pump. 

MC68HCI I devices operate in one of 
four modes: I) single-chip, where the 
device acts as a monolithic MCU, 2) ex- 
panded multiplexed, where two I/O pons 
become a multiplexed address/data bus, 
3) special test, for factory testing only, 
and 4) bootstrap mode. The MC68HC1 1 
is configured to run in ihe bootstrap mode 
when operating in the W/E cycle system. 
When configured in the bootstrap mode, 
the MC68HC1 1 is capable of receiving a 
serial stream of data via its serial commu- 
nications interface (SCI) and storing ihe 
data to RAM. Once the serial transmis- 
sion is received, Ihe M68HC1 1 vectors to 
the beginning of RAM and executes the 
code. 



Write / Erase System Hardware 

The W/E sysiem consists of two 
boards, a device under test (DUT) board, 
shown in Figure 2, and a driver board, 
depicted in Figure 3. The driver board 
controls the W/E stress of the 
M68HCI I's, which are placed on the 
DUT board. The two boards interface via 
an edge connector. In production, W/E 
cycling occurs at 125 C. Thus, Ihe DUT 
board is placed inside a high temperature 
oven and connects to the driver board 
located outside Ihe oven through the 
edge connector which is placed inside the 
oven wall. 



CLOCK. POWER AND RESET SIGNALS 



i 



DUT 
NUMBER 
1 



I 



DUT 
NUMBER 
2 



I/O LINES 



DUT BOARD I.D. 



RESISTOR PACK 



1 



DUT 

NUMBEtf*- 
N 



FIGURE 2 W/E SYSTEM DEVICE UNDER TEST BOARD. 



66 Micro Journal 



January '89 



47 



•+-•> 



LED'S 













LED 
DRIVER 















PRINTER 
INTERFACE 



68701 

MCU 



DUT 
CLOCK, 
POWER 
AND 
RESET 
CIRCUITRY 



I/O LINES 



DUT 
BOARD 

I.O. 
DECODE 
CIRCUITRY 



«#-#> 



FIGURE 3 W/E SYSTEM DRIVER BOARD BLOCK DIAGRAM. 



llie MC68HC1 1 DUT board coniains 
little circuitry outside of the MCU's 
themselves. Each MC68HC1 1 connects 
to an IAD bus in order to communicate 
with the driver board. Via the DUT 
socket, the port E pins of each MCU are 
hardwired with a hexadecimal address 
equivalent to the socket number in which 
it is placed. Since the IAD signals are 
bussed, this address is used by each DUT 
to discern whether the driver is initiating 
communication with itself or another 



DUT. Clock, power and reset signals are 
also obtained from the driver board. The 
DUT's opeiate at an E clock frequency of 
1.0 MHz with a S.S volt supply. Lastly, 
the DUT board contains a hardwired 
board identification code to inform the 
driver board of the package type and 
quantity of MC68HC1 1 *s on the DUT 
board. DUT boards were made to support 
48 pin DIP, and 52 and 68 pin PLCC 
packages. (Note: see MC68HCU Data 
Sheets for package information on 
particular MC68HC1 1 MCU devices.) 
Table 2 lists the quantity and the package 
type of the MCU's for the respective 
DUT board codes. 



HKST5TOR PACK NODK DUT PACKAGE TYPE 

Nl n2 n3 



DUT QUANTITY 




PLCC 


30 


PLCC 


50 


DIP 


15 


DIP 


30 



llie driver board is primarily com- 
posed of a Motorola MC68701 MCU and 
several logic chips. The MC68701 
MCU's features include 2k bytes of 
EPROM, 128 bytes of RAM, an SCI, and 
parallel IAD. The driver board consists of 
several sections which facilitates its use 
in both a production and engineering 
environment. As cited earlier, the driver 
board contains circuitry which provides 
the DUT's with power, reset and clock 
signals. Several IAD lines are present to 
communicate with the DUT's. Addi- 
tional circuitry enables the driver to 
determine the DUT board identification 
code. Ill is information is used by the 
driver board to configure its IAD circuitry 
to properly communicate with the DUT 
board. The LED's and printer interface 
sections of the driver board are used to 



TABLE 2 DOT BOARD IDENTIFICATION CODE. 



46 



68 Mcro Journal 



c 



STAKT 



J 



INCTIALIZE 
I/O & RAM 




WAIT FOR 
DRIVER 
TO POLL 
DUT 



AFTER DRIVER 
ACKNOWLEDGES 
DUT. GET OFF 
BUS TO ALLOW 
POLLING OF NEXr 
DUT 



inteiface wilh the user. Although a 
printer is not connected to the driver 
board during production W/E cycling, a 
push button switch contained in the 
printer interface is used to initiate W/E 
cycling. The printer is used extensively, 
however, in engineering evaluations as a 
data collection device. 

System Operation and Software 

The software program which runs the 
W/E cycle system consists of two parts: 
1) M6801 driver board code and 2) 
M68HC11 DUT board code. Since the 
M68HC1 1 code is upwardly compatible 
wilh M6801 code, the two programs were 
combined into one larger program, which 
is assembled using an M68HC11 
ciossassembler. Care must be taken to 
assure that no M68HCI 1 specilic 
opcodes are included in the M6801 
portion of code, since the MC68701 
MCU will view the opcodes as illegal 
instructions. 

Once assembled, the software to 
operate both the driver and DUT boards 
is programmed into the driver board's 
MC68701 MCU. As mentioned previ- 
ously, the DUT MC68HC1 l's operate in 
the bootstrap mode which enables them 
to use their SCI to read a program into 
on-chip RAM and execute the program. 
This special feature of the MC68HCI1 
bootstrap mode allows the driver board to 
download the MC68HC1 1 poilion of the 
code to all the DUT's simultaneously. 
Programs downloaded to the DUT's are 
limited in size to 256 bytes in order to 
completely lit in the RAM area of all the 
MC68HC1 l's. Programs are serially 
downloaded from the driver board via the 
MC68701 MCU's SCI to the DUT board 
at a rate of 4800 baud. 

Once the M68HC1 l's are loaded onto 
the DUT board and both the driver and 
DUT boards are placed in their respective 
positions about the high lempeiature 
oven, the system is ready for use. The 
driver board controls the W/E cycle stress 
of the MC68HC1 1 "s in the manner 
outlined in Figure 4. After initializing 
itself upon power up, the driver board 



FIGURES 'gCHECK PROGRAM FLOWCHART. 



68 Mcto Journal 



January '89 



49 



STRESS SELECT 
TRANSISTORS 



DETERMINE 
DEVICE 

TYTE 





srARr ADDR 
OF EE • SFEOO 
END ADDR OF 
EE-SFFFF 




STAR* ADDR OK 
EE-»B600 
END ADDR OF 

KK. *im>- 



T" 



START ADDR OF 
EE - tKHOO 

END ADDR OF 







' 








' 


■ 


r 










CYCLE 










STRESS 








> 










ERASE 












EEPROM 












BYTE 














" 










GOTO 








GOTO 




FIRST 




PROGRAM 




NEXT 




EEPROM HVn ; 


€HWM 




BYTE 








BYTE TO 00 








I 


\ 








■ 


t 






Sr.NTiu£\ 
















f PRO 
\ A E 


r.HAMMPy 






4ASED / 








X ONCE? / 






y^oo \ 






NO / W/KCYUiX 






J 


DONE 7 N 











DATA 






*Sf 








RETENTION 

TEST 




READ EEPROM 
BYTE 
























GOTO 
FIRST UYTE 


i 










» 


GOTONEXI 

liYTK 






YES 




/ ALL \ 
/ BYTES \ 




i 


i 




FIGURE 6 'STRESS' PROGRAM FLOWCHART 



50 



January '89 



68 Micro Journal 



reads (he DUT idcniif icaiion code to de- 
termine the type of DUT board in use. 
Recall, the driver board uses this infor- 
mation to properly configure buffets in 
order to communicate with the DUT 
board. If an invalid code is read, which 
would be the case if the boards were not 
properly connected, an ciror code would 
be displayed on the LED's. 

Once properly configured for commu- 
nication, the driver board downloads the 
QCHECK' MC68HC11 program to the 
DUT's. This program, outlined if Figure 
5, is used to perform a quick socket check 
of the DUT's to assure that all the 
MCU'sarc ptopcrly seated within ihcir 
sockets. 

To perform a socket check, the driver 
board polls each DUT individually, and 
wails for the unit to respond. To poll a 
particular MC68HC 1 1, the driver board 
tiansmitsa data byte which concsponds 
to the socket number of the DUT. All of 
the DUT's simultaneously receive the 
daia byte and compare it to the value 
hardwired to port E of ihcir individual 
socket. When the data byte received 
matches the port E value, the MCU 
responds. After the proper handshake 
signals arc exchanged, the MC68HC1 1 
clears the signals applied to the IAD bus 
enabling the driver board to poll the next 
device. 

After polling all of the devices, the 
driver board displays the socket 
numbcr(s) of the DUT('s) which did not 
respond. This allows the user to power 
down the system and rcinscit any device 
which is not correctly positioned. If all 
the DUT's respond, the display will flash 
00. The driver board will continue to 
display the socket numbers which did not 
respond until the user presses a button on 
the driver board to initiate W/E cycling. 
Before cycling is initialed, however, the 
oven in which the DUT boards are placed 
is heated to 125 C. 



Once the appioprialc button is 
pressed, the driver board writes a con- 
tinuous 00 to the LED's to indicate that 
W/E cycling was initiated. A second 
program, 'S1KESS', outlined in Figure 6, 
is then downloaded to the DUT's. From 
this point on the driver board docs not 
communicate with the MC68HCI l's but 
solely provides ihcm with power and 
clock signals. Additionally, all inputs 
from the user interface arc ignored. 
Thus, W/E cycling can only be aborted 
by resetting the system. 

Each DUT individually receives the 
'STRESS' program and pctforms W/E 
cycling on its on chip EEPROM. After 
initialization, the 'STRESS' software 
performs a one hour bulk erase of the 
entire EEPROM array. The bulk erase 
stresses the select tiansistors which arc 
activated to access individual EEPROM 
bytes. 

The 'STRESS' program was written to 
■un on all current MC68HC1 l's, each 
with various EEPROM sizes and address 
locations as cited earlier (Table 1). Thus, 
once the one hour bulk erase is com- 
pleted, the DUT must determine the size 
and location of its EEPROM. This is 
achieved by examining a location in boot 
ROM or the CONFIG register. On the 
newer MC68HCI I devices (E2, E9 and 
Fl) boot ROM location SBFD4 contains 
data which identifies the particular device 
type. For example, an MC68HCI 1E9 
device contains 'E9'. From this byte, the 
start and stop locations of EEPROM can 
be determined for these devices. The 
MC68HC 1 1 A8 and MC68HC8 11 A2, on 
the olhcrhand, do not contain this boot 
ROM data byte. Thus, the CONFIG 
register is used to distinguish between 
these two devices. If the upper nibble of 
the CONFIG register is 0, then the device 
is an MC68HCI1A8. A value other than 
zero indicates that the device is an 
MC68HC811A2. 



Once the device type is determined, 
500 W/E cycles arc performed on each 
EEPROM byte in order to screen units 
which contain weak EEPROM floating 
gate cells. Once 500 W/E cycles arc 
completed, a data retention test is per- 
formed. The data retention test takes the 
form of continuously reading each 
EEPROM byte in succession until the 
system is powered down. Upon comple- 
tion of W/E cycling the EEPROM of 
each device should be fully programmed 
to 00. 

Once W/E cycling is completed, the 
oven is cooled down and the DUT 
MC68HCI l's are removed from the 
boards. The units then receive a full test 
on a high speed tester. During the post 
W/E cycle test, units which do not 
initially contain 00 in their entire 
EEPROM arc binned out as bad devices. 

Conclusions 

The two board W/E cycle system is a 
cost effective efficient tool to screen 
MC68HC1 1 MCU EEPROM devices 
which may fail prematurely in an end 
user's system. This versatile system is 
used to stress live different MC68HC1 1 
devices with one single software pro- 
gram. 

As mentioned earlier, the W/E cycle 
system can also be used for engineering 
evaluations by altering the software 
programmed into the driver board 
MC68701 MCU and downloaded to the 
DUT's. Software changes enable the 
driver to collect data from the DUT's, 
and to print data via its user interface. 

Additionally, the W/E system can be 
programmed to act as a gang programmer 
for MC68HCI 1 devices. Thus, up to 50 
MCU'scan be programmed simultane- 
ously with one driver board and DUT 
board. 



FOR THOSE WH 



•IN I El) TO KNOW 



68 MICRO 
JOURNAL 1 



66 Moro .Journal 



January '89 



51 



AA MOTOROLA IMC. 



Bit-Bucket 




By: Alt of us 

'OMnfett ft£u**y Txrmt %"***/ ". DMW TO 



ALTOS ANNOUNCES MULTIUSER SYSTEM 
BASKDON MOTOROLA'S 6 



Shmu/I>avfi 

Cunningham ContrnunHaaon Inc 

(408] 982 IM0O 



LisaHadiey 

Mitn^unvT Products Oowp 

(512)440-3095 



Seventh Company in I-am Month m Announce 030- Sued Computa 

LAS VEGAS. Nev . Nov H. 1988— Motorola** M icrxsprca* ssor ProducH Group 
(Austin. Texai) today announced thai Alto* Computer Systems (Sin Jose. Calif.) wiJl 
iWT*jK*»ieMutoroU*»u>^of-ih*-Kfte 69030 4030) processor in in higher pa farmance 
multiuser system. The new computer, ihe Allot 6h*X Sene»030. is configured louse iwo 
25 MHx 034) chips ami supports 250 users The announce mem was made ai Comdex, i 
computer industry trade show 

TT»f]30'scompatrbilily with ill proccum in Motorola's 6WXX1 family allows for 
ea»ymi«7»n«iof lufiwarr from Altos' 6M>20- based products lo its new 030- based 
multiuser lysirm Currently the 030 powers more than 50 syaiems. iiicludi ng pcnonaJ 
cmvTUicn and wort nations from Apple Computer. Hewleit Packard. NeXT and Sony 
Mscmsysacm These »|rnnro add *o Moviola's SlOObillron insulted base of hardware 
and S3 btllion base of 32 b*t software, the world's large* 



NfcVi MtMMM SWIMS aiHjPT MoToKol J|-SMo,*o 
Fu|ii %u. Sharp and Sunnwnw Elena o £ tpand frwifato «f 030 Users 

AUSTIN, Trias. Oct 19. 198B- Mcamilat Manr*^*^* rWucn Group toca; 
anrcnaarad thai throe major Japanev imajauiei wiB cflcorpnraa; its 68030 <030) andopRxetw* at 
(he c«enl picctrtc* tn ayueras thai air toWuJod for shipment by the year't end Fnptut 
(Tokyo* trx largest manufacnirei of nwnframn and mi«M.unpvai« m Japan, will base t«oof it* 
oest genericm tnlimwr^pinen on the 030 Shvp 'Osaka) and Sumitomo- Dcnko (Tokyo) till 
0c4*uv«ihr 32-hipnxetswinhijh endworktuocm 

Fujitsu's 030-batad AW and A ■•> are ihe U«»i in ihe ooRajnn>'s A- tenet of rasuvomptocr* 
» be hated on Moatnaj't 68001* family Sharp sJX-4 Model 2 and Sunutrw Dcoko'i 
USuuicav**), both uuna the 030, are topHrf-ihe lute engineer-oil workstaiimii ihn perform 
advanced CAD/CAM oprmUeu The workuatkKxs add so Sharp and SuiiutoenotDenao'scurrem 
6*000 bated produci lints 

TheDJO'icom&aabUlLy wnh procesaor* in dw 68000 tine provides an easy upgrade path for 
osorethan 400 compan>es using its pnasnceastr , die 60020 CWntndy. nsar than SOCwnpaniei 
oat the 030 lo power ihear systems. Sony K ajtayiaaa . the leading manufacturer of worksiaaact* 



M)SV IVfROfH (IS MtRFt WORKSTATION I l\FS 
HANK1MIN MOTOROLA'S 6S030 



AUSTIN Te»» OtJ Jl, [MUS *4«wceVi M«rnr«rre\]<w Prttftorn Group Khfay 
I thai Sony Mitniiyunm. ihe katuni numdaLrumr of worVuattont «• iapan will 
esnwpuraat Mm»at4»'s 6*0)0 10VJ) processor and bM*2 IKS2) rksuxng pram m»rn mpreaxncras 
three workstation bacs 5oay pm* ■ hou of *cndm aaclwiing Apptr OanpjaD , NcJCT and 
F^iaia dm hai»e teemuy aaauficed, syuems ba u ed on the ujcmj# ihe bne Wmaria protcsn* 

Sony '» three wwtuauon lines, ihe NEWS 1«Wl 1800 tnl 1 900 Senex uk *W \HUd3fl 
astheceiarai («*nu*| eqa>re and a 2 J Mil* 882ftw •dv*nctd autey^oprtiam. The I7<D 
•ysasra sn ua r pma tt a sinale n Wl pnKrtu.* &nd are tanj^o) ai «ora«asrr oferi desifn quit*. TV 
NEWS I80D Vnrs increaics it* om pafivRanKe by tncludina a weond 030 i» an input ^output 
proressor The hi|h<nil NILWS 1900 wurkoalKm also uses a tcrxsMOUlfaterapaHcs 
neiworkmi and VMB bus support. These Sony worhstatKms o>u«de a brt«d spcatvmof 
can pciformaswc soluiumi far a tanfe of nurkest intlLMlinf tncincrnn j. software 4c\X (opn>eni 
and nrtwprt tcrvt? applications 



"Ouf 68DQTJ family has always provides* a ptrwuS path for ctwrqanKt" aid Murray A 
CoMman, senior vsce prcsldcni and tetiail manager of Motorola's Miuutau-essor Picducti 
Croup (Austin. Texas) "Ow future 68040 will sgnificandy inco« the perform*™* of 
systems whik maintaining cot ttpaobitiiy with current 6eXXa>tauod machines * 

17c new Alios 6SX Series 030 runs aSe Alios Pick operaone sysiern and is available 
in iruTeconfifur;ioonsfan|in|in pnee frotn $25,000 lo $45,000. All three cortfipiranons 
of the system will ship in Ihe first quarter of 1989. 

Founded in 1977. Alios desiani, manufactures and nurttet* 16- and 3?-bii nriwoikcd 
mulduscr solutions for dismbuuan m 70 coumnes More than I0K .000 Alios sys 1 cms have 
been installed worldwide 

Motorola 's S2 7 Wilton Sxrmamdoctor Products Sector (Khociux. Anz ), whsch 
incltMlei tr« Mtcirn^cc:ess<» r>oducht Group (Austin. Texas), is a pwt of Motorola Inc li 
is ihe Urxcsi and broadest suppler of ar^rnironductn ui North America, with a balanced 
pufTf*oi to ofovtt 50.000 devices 



.Hr-Vas Packard and NeXT. Inc aba offer 



ui Japan. idEOfporaaEs che 030 aa to hifh-end « 
Saaea. W^halaaa ApoOo Corapwrsj . App* Ca 
lyaam baaed on the 0X1 

The •onaaiey of fht 030 aOowi Ulobeuaed ta a «snrry of c 
exnajanen to aieJVecal «nw\uaacau and waaJU*ia«arrv. ' said Morrey a fWdmaa . semot »ict 
nrcsainm tad general maaaeci of Mosonrfj't MoopruEcsaw Producn Oroop (AvtacTeiai) 
"TV powci of the 030 o«unled with usance andiassBUcKl sormarc rjue eonanue w male « the 
etaacr of niafo> »ysrem l ompan wt " 

The 030 it a hiahly imrr*Kd «■£«•*«* »°r *>* aTl uvd^ pavalkJ (tlarvard-siylcldual 
but arc hi asctunr. rnerrewy ovsnatenxre una. and separate 25o>bytedaiaaodins<naTafa)cachriona 
single chip All pnxessors is the 68000 family mt hdly cunoaDbk with one anotho, alio win| for 
easy mipvaon of software Currently. Ni<asxQla'>rV000riunly has a Si OObtUwet/iiullad bate 
of hardM^re and a U btllion 32-bii soft* an bate, the world's larecst 

Moorola's S2.2 bUlton SerTacooducior Products Sector ffbrania, Anz.1. whKh include ihe 
Ml t T pprn t ssor Preeiue^ Group ( Autdn. Texas), is a part of Motorola, inc The company rt iV 
largai and bcurfim tupplm of serrancrJurior* in North Ajwriea. wnh • bmla^ed ponf oho of 
more than 50 XJOOdesxes 



"Suny tsclca/ly a inhrx4ug> Scadri jnd wearepnuid UIjiin* r*irai|, I iM*Kh4i.>«tftiHjK l l 
to ii» uxvrfct tasd Muf ny A CkiUman. tenav vice preMdmi ami fraeraJ mjtjfct .n \1*<iO • 
\lH.rocaucrtsdr PnjdWuCinMayr Ainiia,Tc«A«» 'OiaNUaNKumlv *iH mfitnin: *»iSfL*mhr 
ectfivniame needAl h» lea>SrrUup m the «vrtaanuB muin " 

Vtuaornla »AaJUK«rt*dy^wi«u*t4thcr*«saS.fthTll0.pAr)M*«»dfr«lWi All «n#n».< 
iht lamd y are umpalible * dh ivtr ar*aher . alk**ing hw c**y vdiwarr ntteratkvi Ihwi Sort* ■ 
r>htl5Vtjs«edpn^ucJ« id the new UVi tutot nrtrtWjnrth Currettdy oV^Jaalii^mly lu% 
rstahinhcd a SKRIbtllion uiuillrd hatr itf 'urowan: and a 5s nllsan «su)lrd hav i4 1? hn 
Mi<i«are,the wtvld * lareeu 

Sony \ltcnnysKirti Company . heath) aanerrd m Palo Alio. Cahf is a wboOy i*»nrd 
nervsny o* Sony Corporal too oT Amenta, itself a dlvtstonof the SI I 4 bttlioa Sony o«puntttret 
Tokyo- Sony MteroiyMem* nwkct\ tutelar ihe ancwnpwirr uhniry rutn)w?rcand««i'iwaff m 
the Vmietl Staar* 

MoanvU 1 52 2 Ntltoti Serroconduruv PtnducK Sector iPtxcms. Anr 1. which incluoVvthr 
MH.-rnprrsTSMw Ptcaiacts Group (Austin, Trtatl.u a pari of NlnuwoJa Int.- Il it ihe Loieed ^nd 
rtfoadevi supplier of semiconductors in North Amcncj. »tth a KoLinccd nortfoln of over 5(>.isa> 
dev*ce» 



52 



January '89 



66 Micro Journal 



CERTIFIED SOFTWARE CORPORATION 



P,0 BOX 70. HANDCXPH, VT 0S06OUSA TELEPHONE: 802-728-4062 FAX: 802-728-4126 



CERTIFIED SOFTWARE ANNOUNCES BBS FOR 
OMEGASOFT PASCAL ON 68000 SYSTEMS 

RANDOLPH, Vermont, October 19, 19SB ■ Certified Software today 
announced the Installation ol a Bulletin Board System to be used lor 
customer support ol the following products : 

P20K - 66000 series Pascal for OS9 and PDOS hosts. 
PXK9 - 6809 Cross Pascal for 66000 host running OS9. 
PCSK - 68000 Pascal lor Atari ST host. 

The BBS allows users to cell in using a modem at 2400 (V.22 bis). 
1200 (V.22), or 300 (Bell 103} baud. The terminal program (supplied by 
Certilied Software) allows error free communications with the BBS to 
facilitate downloading and uploading of programs reliably. 



Access Is on a subscription basis, with charges based on usage and 
a monthly account maintenance fee of $3. The minimum amount to open 
an account is $80, It Is estimated that this would last the average user a 
year or more. Users apply for an account by logging into the system the 
first time and sending payment information to the BBS sysop (CSC). 

The system is designed primarily to supply users with the latest 
Information on OmegaSoft Pascal Including patchs and work-arounds to 
known problems. There will also be tree soltware available on the 
system, and users may exchange software they have written, and even 
purchase soltware from other users (S50 maximum per sale) by having 
money from their account transferred to the seller's account by the 
sysop. 

The terminal program required to access the system will be 
included In future updates of existing products or may be obtained from 
your distributor. Copies may be purchased directly from Certified 
Software at the above add ess tor $10 with your prepaid subscription of 
$80 or more. Subscriptions may be charged to your credit card (VISA 
and Mastercard), credit card customers receive a 5% bonus. 

OmegaSotl Pascal 



For lurlhar Informaiiofl. contact: 

MOTOROLA INC. 

Angela HalflaU, Press Relatlonn. 602) 994 6900 

Dev Chsjiraveity. Technical Mandating. (602) 821 4424 

PCPI INC. 

Sleven J. Leon. TechnopoKS Communicallons. 1213) 670 5606 
Erie W. Gatr. Diraclor ol MalfceUng, (619) 485-8411 



MOTOROLA. PCPI™ INTRODUCE NEW 
GENERATION OF LASER PRINTER CHIPS 



Laa Vagaa. November 14, 1888 . . . Motorola Semiconductor 
Product! Sector and Peraonal Computer Producla inc. {NASDAQ 
eymbot PCPI) today introduced the Ural ol • new generation ol 
application. apeelllc integrand circuits (ASIC*) thai lowere the 
coal and improvee the performance of laaer printer controller. 



(M) MOTOROLA INC. 

Semiconductor Products Sector 



The jointly developed ALPC1 chip lor laser-printer controllers represents the first 
commercially available application lor Motorola's high, density CMOS array (HDC Series) 
lamily of one micron triple layer meial semi-custom circuits, introduced «t November 1987. 

The ALPC1 (Advanced Laser Printer Controller) chip incorporates ana of lie mosl advanced 
silicon lecflnologies available to provide sub- nanosecond speed combined w.lh emremely small 
chip dimension*, Features ol Motorola's HOC Series include denwttos up to 105.000 galas in e 
channeiiess sae-ol-ceiis aichHeciura thai provides over 7S percent typical utilization A one 
mcron drawn-gate-length CMOS process heving triple-layer molal routing and power 
distribution results in atO picosecond typical gate delays and very small die size (226 mils 
square for 16K gales.) The circuits are packaged In economical PLCC and line pitch OFP 
surface mounl oonllguralions and PGAs for through board applications 



The LPCt and ALPCt gale array circuits are Ihe keystones ot en Integrated array ol producis 
and services for manufacturers of printer engines, vendors ol laser printers and systems 
integrators.* saM Eric Grter. director of marketing lor PCPI 

•PCPI s OEM customers may now purchase or license al the element:! needed to build and marital 
eny advanced laser primer product solution chips. ihe custom development of software and 
Hardware, turnkey controller designs, complete printer systems, emulelions. an extensive lont 
■onto;, and ImageScrlpt*-'. PCPfs emulation of PostScript. 



LJ. Reed, vice president end general manager ol Moloiola's Application Specific Integrated 
Circuits Division, said 'high utilization In o one-micron channatiess array provisos a 
combination ot performenee end economy ideally suited to building application specific 
controller circuits/ 

in ocWukxi k) providing siwon letcAnoiorjy matched to lha laser printer market, need sek* "Ihe 
Motorola PCPI chips austral* Ihe use ol spectaktM Horary cells to speed trie design phase ot 
creating customized print-engine conlioilers.' 



in e related announcement. PCPI introduced two printer controllers that incorporate the LPC1 
am) ALPC1 Chips. 

The chips mold PCPi's e*penjta in systems end software design with Molorola's Mo micron 
double layer metal end advanced one micion triple layer metal CMOS (Complimenlary Metal 
Chide Semiconductor) semi custom circuit tecrinokxjy 

The two companies annourtcod m iaie August 1 9*8 an agreement to jointly detitgn. manufacture 
and market a new generation ol ASIC chips 'met promises developers Ihe vehicle to provde 
users with lass eipensive primers that feature greater teat and graphics capabilities,* said 

Gear 

Both Ihe LPCt and ALPCt combine Inlo e single Inlegraled circuit a variety of printer 
operations lhal previously required several dues, This slmpfilies controller design and 
customization, enhances lunceonalily. improves perlormene*. lowers costs and trees board 
space lor additional functions. 

For esainpfa, Ihe LPCt Integreles Into a single chip Ihe Interlace wllh the central processing 
unit, dynamic RAM control, and Ihe direct memory access video Interlace Additionally, the 
ALPCt includes onboard hardware assist tor raster operations. 



The Moforole-PCPi ASIC lamljy it designed lo enhance Ihe performance and lurtctbonaiily ol 
systems based on Motorola's line ol MC680X0 microprocessors. Thay will support up to 40- 
pege per minute printers end slenderd emulation ol tail and bitmapped graphics, and they 
ere compatible wllh Ihe most commonly-used prtnler-engine interfaces. 

in addition, the ALPC1 it designed lo provide 88000 bated printers with 68020 performance 
at the tower cost ot liw Motorola 68000 chip. 

Molorola's Application Spvotlc Inlegretad Circuits (ASIC) Division In Chandler, Arizona Is 
de-Scaled to Ihe development and production ol semi custom and structured cuilom circuits 
using gale array, ten-based end lunctionBIMoch techniques. The ASIC Division manufactures 
and markets Integrated circufia woriovtda lor commercial end mflilary end-use martiels and 
develops, acquires and maintains advanced computer-aided design software dedicated to the 
development and design ol appBcsilon-tpeclfic devices. 

located yi San Diego, PCPI Is a pioneer developer, manulacurer and marketer ol laser primers 
end Intelligent, mlcfoprocatsor-basad board-level product* des-3ned for use wiih leading 
mtc/ocomputars end worksuiions 



68 Micro Journal 



January '89 



53 



® 



MOnMOLA iwa 



* uw flwtu ctwTootm 

MIWUICHf 



!• 



■n MM LPC1 «i #Ofi proo* *pw 
■ L PC i far «K»ciftc ■*«>*-*•»*■ 
CAX* iMJ «i«m*i*JMr *nd**Q«o4CPUc 



rai«nitf*fit 

• UC4MUH»1ut 10 liUMlj 
' CPUC«K*0«n«<«or 

• VwuHi DTACK fataao-t 

- CPU ■»*n#i or Pafcng Opian 

• CPU ConraflHl DugnWK Pfttf* £n*»i«ten Uqa 

• I «-M*«9' «"»*»• $effw*i« mt»rr\«t Ttfn«* 

- ie«iO««Bui 

nium CflHtftQl. 

< GUI I MCQItytM DRAM Control* 
' 2MKmdiU*gDnAUCh«jSupp«t 

■ 1 Port Mtlw} iMwttCa Afb<ru«n 
[GPU Vrt»DMA HiIibVii 

■ ht«rr^Ht*r«»hCyaliOo«*'0'<PAS-Cw^> 

■amfifjMinpaa 

■ V4h DMA **n «*4«:1ib«* Wrfla Uc) »'*ta Odan 

■ H-t* PWpM WMtH VwtcU L«* Smi Coirtf ■** 
MMNpl o» PD*na Option 

> inrvftobtilaAjULOATf Oc*on 

■ w«*m* U wfFogf*nw*6*»L<iArECawrtw 

• i?l»PtgQrft<T»n*(MiWon»A« Cirt* 

• BwPniVOTNaB V«»a 04M U*i u) *d*«n 
«!*<*P*^*jl0WriponSc«*C«WVar|nMm*?l 



I MfWft piCMM J , 



lint ««too OM* 



vnataoj ural po*l 

• «r« Ml 4 Nfw o« 



li 



A 



EH 



ij I !| 



h 



III J 

-* I! i— 



i 



i 



s 
il 






11 



l» 




-sis 



-*fil 



8 

-•S2 
3 




&-!.■! 3*1 «l 



K-=r 



PI 



* ! 



i» 






Si: 



: i 



i! 



s 

IS 



,.8 



-s §5 



Si 
il 



I 



4*J»0V HCID LA*iRPHI*niBCCWT»DU.I • 

imtimacichip 



TtoA^PCl <*lh*W«on* 



«<*d>< 



Orm* r? K,nciewU»'*K»*#'OTv*#'Gtrt*i«a< in*CPU<<V»**C« maQvr\*rT*c nuiCOTWirci^jw «rq.nt 
t«3HOuA4U«tui«n«nac« AdoAcu* ¥*• AlPO cniMoiP>u>D <v»*jw«/#jimi'ar: 'Uirepa*ji«nt 
T»» 4L.PCI iii|^to^p«la}**lhUd^AM»lM«9ruCCSCX0i««Brv«v»M(iind>««W9fl>M<o'PCPi( 

.■>-* Bud ^ D *Ufc-> - ■ KiV^amit ^ *v.>i 



f*» AlPCi ■nwtfy •o^ip*. 
bflcw^A'Ofll-PCt ch*> 

Cowod »V^ mo At PC \ vat*.** 



Cawr*G »VWffl« AtPClAn ta» *V Dn*^*"* ""■ ■ ■C'**n «ncr >vr<* * *4« 'j"*flt c*i»» mji « 
cwjwnwmo rr>* AiPCi fa» j ifioCiht •*#*• appimay Qn«e*so Cp_ cioo >«*» f'^ '**»«•*>-• "w*i 

f**v* tort t»» 1ft EM «<W^0t ttfrw WH >**rt«C* »«*\* (»« if< 4 UWO* CPU C0AF» «3 D-*CnoHC 
MVvimu.iiavnMi */■ »■ «ir>alvn AlPCi aun«x« u>u«i 



f**v* tort t»» 1»M rtKOdtr* tn»n« ji^«c*»*^W (»n vd 

ftm*' amuiAttQA H«a« *»■•** *i««oin« AlPCi iun«|ki« tavu/« 



- yCWtiX* nt«rfjc« 1*1»«K1 Mncl iftSWWil.v DC«'*t«r 

i CPU C*x» G«w«» 



CPU 
CPU 



><V«bbc PiMw E" 



■ Zwtt •** MMUm •**?&* 1 ■4|Wtft|«O^C« 
• ■AlT«OWfaTB W i 



< m« «jit***) MMt'CkfiSHpaM 
- 3- Port lim n fPH -*«*£# tttMmm 

tCP*j vnhQMi n«i>w, 
* ****** *****%» ZreiCtnrat PAS-Onfj 



'**• Piao mn fUMn wtwciiL*^ 5c*^ C<w>ii. •# 

23 H F nv t B w i WX V4« DMA Utn^r, Ad»«U Cdi.n|*f 



54 



January '89 



68 Mcro Journal 



Computer Systems Consultants, Inc. 
1454 Latta Lane, Conyers. GA 30207 
Telephone Number 404 483-4570/1717 

CMODEM 



PALM BEACH SOFTW 
7080 HYPOLUXO FARMS RD. 
LAKE WORTH, FL 33463 
(407) 965-2657 



ARE 



CMODEM is a menu-driven telecommunications 
program designed to facilitate the transmission of data 
between microcomputer systems and terminals or bother 
remote computer systems. It functions in several modes of 
operation. 

In the simplest mode of operation, it provides a 
transparent dumb-teiminal method of communication. For 
MS-DOS-compatible computers, it also provides a tvi-920 
emulation. 

It also supports the Ward Christiansen Tile transfer 
protocol to facilitate the eiror-frce transfer of files between 
systems both suppoiting this piotccol. The default error- 
checking method used is checksum. CMODEM will 
acknowlege CRC error checking and will switch if requested 
by the other computer. This feature allows the use of 
CMODEM with most available upload/download facilities. 

For those systems that do not support a batch transfer 
protocol, CMODEM supports an ASCII file collection/dump 
mode for transfer of text flies. In this mode, and in dumb- 
terminal mode, it supports an X-ON/X-OFF mode of 
compiling the data transmission. 

CMODEM will work at spaeds of 300 to 9600 Baud for 
those systems with asynchronous communications support 
devices. It is used regularly at 9600 Baud between adjacent 
machines to transfer data between ihem. 

The CMODEM program with printed manual is 

available for a tetail price of $50 without source or $100 with 

source. 

68010 SUPER SLEUTH 

A disassembler pet forms a function opposite to that of an 
assembler. That is, it allows its user to process an object 
program , for which no source program is readily available, 
and to re-create the essentials of the original source piogram. 
The resultant source program may then be studied, 
commented, modified, reassembled, etc. A trivial 
disassembly may be performed rather simply manually or 
with the use of a computer by translating the successive 
bytes of object code into the equivalent mnemonics for a 
target processor. A really useful disassembly requires the 
assignment of labels and the ability to determine whether 
given bytes in the program represent data, addresses, 
garbage, or instructions. Since a computer can assign labels 
but cannot classify program contents, disassembly must be 
interactive to be meaningful. 

SUPER SLEUTH is a collection of programs which 
enables die user to interactively examine Motorola S-format 
program files on disk. 68010 programs may be disassembled 
into source code format and the source saved on disk. 

Programs in other binary formats may be placed into 
Motorola S-format with utility piograms provided with 
SUPER SLEUTH. Labels produced by SUPER SLEUTH 
can be changed globally to labels of your own preference. 
Cross reference listings of labels can be produced to aid in 
debugging or modifying the program . 

SUPER SLEUTH, with printed manuals, is available in 
object-only form for a retail price of $100, or with source 
for $200. 



ii it itiii on 



CONGRATULATIONS on the purchase of yoiir PT-froKJ. I have bee* selling 
■id ullt$ Peripheral Technology product t (or (he past 6 years ami my ojakxnen and 
( are very happy with ihelr product*, lervlce and support. Since 1978 I have been 
developing buslneia oriented program* lor (J« Motorola 6600 A 6909 and 1 am no* 
Cori Vb ft Idg them lo the £4000. The folluwltaj produ,C(i art! available from Palm 
Beach Software. 

EDDI a screen edtor aitd formatter, lw.00 

EDOI ha* £2 key eotnttuind* to completely manage the lett and acreen dlapley, 
and 22 formal tiraj command* to control the printed output. It ta alio convenient for 
uk ai a program editor awpparting line number a. tab stop a and wtcro keys. A 
■pelling helper, lynonym finder and oiH*r DOS utlhlte* are available without etlllng 
EDDI, T*o bank* of memory are supported ao rhai you can edit two (Ilea and move 
data back, and forth. |)OCUMAK£R la boiler plate document creator) and MERGER 
(peraonal)ied name, text and addreai Insertion) all] be available In late 19W. 

SPELLS a 160,000 word apelints cteci-er. 150.00 

SPRLLB fcsi been around In the C409 veralun for 6 yvmt*. 
version 1.0 and I have onlly fued two mlupe|||ruji. 

ASMK a native code eatembler. $25.00 

ASMK It a bare Bonet, native rode, WO00 assembler, il duet not have mjcfot 
or condlllonil atiembly and you fliuat have enough tnemory to told the complete 
aooree and object coot. The ij«ai la almllar to other 6800 and GB09 easemblera 
which were common lo the SS-50 world,. It la very faat. 

SUBCAT a aub-dlrectory manager. $25.00 

SUBCAT la a program that will allow multiple directories setup In a tree 
•ttucture on a disk. The dltk directory Is not altered and It itlll the primary icurce 
of Information about each file, fcech entry hat a X byte meaaege area where you 
can keep a doacrlplkjn of (he file and lit content!. A long block of revert* vide* fa 
Moved to lelcci an e r» ry and now you can execute the following operation* on Che 
teleaed file, Aatcmble, copy, delete, edit, get or eaecute, help, kill, Inilalt. load, 
enter mei)i|«, rename and view. Other operation*; backup, *»*CWJ e DOS command, 
ican, updiite, tap and e*tt can be done from any position. Two other command* are 
uwr definable, In essence you can create a tree like catalog a true lute and then 
manipulate Ihe file* In these catalog* a* en Independent directory. 

KRACKER a dUeaScfffbler program, 425.00 

KRACKER will allow you to sceo through a program to create a memory map 
of cod*, tout, tablei, etc. When the mentory map It competed you can create a 
lource code file to dltk. printer, or terminal, 

LOGIC a achematlc drawing prog, graphic acroeo onJy) (75.00 

MOZART a music editor (require! Bpeclet cardl $25,00 

TV following program Ii underdevelopment and la expected to be released In 
the third Quarter of I3W. 

PARASOL a com pine Integrated buitncta tyitem. 

PARASOL la a alternate tailing, memory management, menu driven, umbrella 
ur thell program for the PT-68K2. The main nvrvj can be reentered from any 
program, where you may aelecl another tut. Thla intk mi) alio reenter Che main 
menu and i elect again. When you ezh a taik you will be returned to the prevloui lass 
at Ihe exact point where you left with all pointer*, flng* and tcreeni restored. At 
Che pretent time Che following program* and de»V accxtsorlea are either working or 
under dcvelooernent. Multiuser version can be modeled in ihe fall of l&Aft. 

APPOINTMfcNT Calendar 

BILLS PAYAIlLf 

COMMUNICATIONS PACKACL (Lmall. Modem Management, etc) 

DIARY (Note P«4 data ba*e argeniied by name A IIW| 

LfjllPMlM ll>ata bate of properly (depreciation, lose* A borrowtjl 

FILE ROOM IMadin data bate organlird ai Cabinets (dlaki], |>ra»en (directorial), 

Folders (tub -direct orlea), Oorumeni* (fltesJ. After a oacument hat been 

■elected you will then have the opt km to edk. view, rename, copy. tend, delete. 

attemble, etc. 
GENERAL LEDGER Invmplete double entry accounting package] 
HOUSEKEEPING (dally journal A P°»lli« to all account! 
INVOICE GENERATOR Icreute Invoice* and delivery ttckeia) 
JOB JAR (dais ba«e of thing* | do) 

COST ACCOUNTING (Integrated with bill* received 4 payroll] 
TIME LOG A MANAGEMENT (professional iltue monitor lor billing) 
FILE MAINTENANCE Iwhere all beo-boot are corrected) 
NAMt A ADDRESSES (main data bote *i m«it other files are referenced to the 

personal (0*. 
PURCHASE OHDf-RS (data Use of order* placed) 

PAYROLL UOOO employees, cherka. montMiy. quarterly, yearly report* and W2'») 
EMERGENCY EXIT tmetu of ihutduwn procedures! 
RECEIVED ON ACCOUNT (Integrated with invoice generator to keep record ol 

charge* and payments., statement *, pan due report! 
SPRfcAD SHrfTT 

TEI.LPHONF A OlAl.t.R Idlal telephone and keep record of time & ch«rg**) 
UTILITY ROUTINES 

INVENTORY (manage the Inventory Integrated »ttb Invoice generator) 
EXPENSE ACCOUNTING Hog A manage expense account*} 

Palm Reach Software prograeit are written In atsembly language for apeed 
and efficient utc of ram and dltk memory. They are not copy protected and the 
aource code I* made available for the module* thai are uaer defined. (Printer 
driver a, Terminal driven, Mbdavn driver* aitd Key tolectkm table*) A a man 
terminal la required for our bualneat coftware. I recommend the TetftvfdX> 90S, but 
the Wyte WY-50 la alto a good choice, A amart tormloel emulator program hat been 
written for the monographic* card and AT nyle keyboard. However; If you plan tn 
the future to utc the butlnen program*, either alngle or mulduier. a intart 
terminal should be uted. Pleaae Include a dlacrlptlon of your *yitem with a*c* order. 
Software will be distributed on S 1/4" disks. Single Sided, PeuHe Oenaky, and 96 
TPI unleat a tpecial r«)uni la made. 

ii.ii't>> **■■• ■'"«., 

Den Parnaworth 



€8 Micro .(oumaJ 



January '89 



55 



GESPAC Inc. 
SO Waal Hoovar Ava. 
Hasa, Arlxona 8*210 
Tal. (602) 962.5SS9 
Fax. (602) 962-S7S0 



Headar Contact: Don Bizlos 

Editorial Contact: Cosma Pabouctsldf* 



DO NOT RELEASE UNTIL 12/15/88 

6026S O-M BOARDS SET KELPS BUILD ROG6ID 
IBM PC AT COKPATIBlt SYSTEM 

Kaaa, AX, loviihir 1, 191S--CBSPAC baa ralaaaad • 
board aat lnplaiinting tba lotil (0286 If-blt 
procaaao*, aGA grapblca, mod dl.k coatrallti that ia 
eoapatibla with tha IBM AT ruoolDg at 10 HB*. Tba 
tbraa boarda ara aaeb built uodar tba aiogla balgbt 
Zuroeard form factor, uaa tba rallabla PIN 41612-C 
eooDactor. aod ara daalgoad to oporata oo tba G-64 
bui. Tba nDio.ua aacbanical cbaraetariatiea and bua 
astanaioo capability of tba board aat aakaa it idoal 
for uaa Id applications wbara a barab or vihratlog 
aoviroaiaaot would prohibit tba uaa of a raaular offica 
PC Or eoapatibla. 



o 



Commodore NEWS 



For further Information 
contact Valerie Bellofatto or 
Lor. cross at Fleishman-Hi 1 lard 

(213) 629-4974 



COMMODORE INTRODUCES AXIC 



' WITH 68020 



Amiga 2500 faaturaa doublad proceeeor epeed, matb-co-processor 
and 2 M8 of 3?-blt RAM for workstation-level applications 



IAS VECAS. November 14, 1966 -- Commodore Buslnaas 
Machines, Inc. today introducad tha Amiga 2500 daalgnad for tha 
naads of graphics, animation and video profasslonaLa . Baeed on 
the original Amiga 2000 introducad a yaar ago, tha Amiga 2500 is 
configured with an A2620/2 co-processor card that comes standard 
with tha Motorola^ 6B020 processor, 2 MB of 32-blt RAM 
(expandable to 4 MB) and a 66661 math-co-processor. These 
high-performance features enable the new Amiga ayatem to perform 
at tha workstation-level speeda required by many of the new 
second generation graphics-based Amiga applications. 



Tba firat of tba board* ia a bigbly integrated 

industrial implementation of Intel's bigb performance 

3 028 6 16-bit microprocessor. Tbe microprocessor baa 

512=: of fast access oo-bosrd dynamic memory aod 

■ ocket ■ for tb« SPRCM 020-3. For matb inteneive 
operations. an 60267 arithmetic coproce aeor oso be 

added . In addition, tbe board ioeludaa two RS -2 3 2 

aerial porta, tbrae timers , a battmry bmcked-Vp clock 

aod calender. as well as a powerful interrupt 

coot ro 1 ler . 

Tbe eecond member of tbe e yet em la en Enhanced 
Gtrepbies Adapter (EGA) tbet feeturee an integral AT 
keyboard interface. Tbia bringa PC compat ibXe> color 
grapblca to tbe indu atrial environment. Tbe tblrd 
• «abf r of tbe ayatma ia a bard diak cootrol ler to be 
used under tbe ST-S06 interfeee under tbe 0-64 hue , 
giving tbe ueer tbe option of uaiog a vset number of 
bard disks, aa well aa capacitlee at a low coat. 

All tbree boerde commuolcete tb rough a etendard G- 64 
bue backpleoe. Tbe 0-64 bue ie s 16/32- bit opeo bus 
architecture, featuring the eingle height Kurocerd 
board fonit (4" by 6.25"), tbst ie widely used in 
iodustrlsl and imbedded eystmms application. Tbe bue 
interface a 1 Iowa tbe board sat to bm expanded with any 
of ovtr 150 I/O. data acquisition or controller 
modules available for tbe bue . 

The board aet has been d«man jt ratmd to run mil th« 
aoet popular prog rase written for the IBM PC AT. 



"The Amiga 2500 is a natural progression of the Amiga 
technology," said Joel Shueterman, Commodore vice president of 
marketing. "The Amiga 2500 has no equal in its price/performance 
class and offers all of tha original design benefits of the 
Amiga 2000 as an expandable, sultl-tasklng, multi-processing, 
multi-operating system machine." 

The advanced graphics capability of the Amiga aeries ia 
ideally suited to color desktop publishing and presentation, 3-D 
solid medal ing and professional video appli cations, with the 
additional speed of the Amiga 2500. color rendering time of 3-D 
graphics and re-calculation time for modifying full-color desktop 
publishing pages can be reduced substantially. Performance 
increases can be up to 400 percent. 

Standard on tha Conmodora Amiga 2500 is a Motorola 68020- 
based co-processor card (A2620/2) running at 14.26 Mhz with 2 rte 
of 32-bit RAM, (expandable to 4 MB of 32-bit RAM): a built-in 
3.5-inch floppy disk drive; a pre-conf igured, high-performance 
40 MB hard disk drive and hard disk controller; custom sound, 
animation and graphics chips* RS232 aerial and parallel 
connectors; and two RCA-type audio output jacks. Also available 
is an MS-DOS^ compat ibla Bridgeboard allowing the Commodore Amiga 
to run MS-DOS compatible software under Amiga control. 

Tha opan architecture of the Commodore Amiga allows 
extensive internal expansion with multl -processor, multi-DOS 
options. Contained in the Amiga 2500 ara seven full-eize 
internal expansion slots which include a combination of Amiga, 
standard PC XT/AT and dual purpose slots: s CPU expansion slot 
and a video expansion elot. 



56 



January '89 



68 Micro Journal 



rtfta 



Product Mews 



5rV**E k Djvi 



2AV 1 Winchnlrr Blvd. Campbell. CA * 
M urry Shohat («*J V4 74M 



Contacts; 

FORCE USA: Wayne «**« (•OBJ 704XO 
FORCE GmbH. Arton Nauuh (HP) 600-91 U 



Extraordinary 68030-based Single-Board Computer Offers 
Large Number of Functions at Low Piice 

G>st/P*rformance Btxakthrwgh with Options on 
Spied, Memory, SCSI Floppy and Ethernet 

CAMPBEU. CA, Oelofctf i». 1*» — A new high-rrwl wtno, based single board rmnpulrr Intro- 
duced today bring* oosl-effkknl moduUrtty to high performance 32- bit applications. The CFU-37 
Offer* awn runrtrotuiity than most single -board VMFhus-bajed computers- The boaid off**? * 
range of option* on CPU sprrd, onboard fDeuiary and floppy, SCSI and Ethernet control When 
hiDy configured, thi* single-board computer replaces solubom tkat use up to Inn boards FORCE 
ha* priced the CPU- 5? beiow any cnmparabte *1/W>e Of tnulbboacd crWering. 

The CPU-37 also offer* An ASIC solution to VMEbus interface and control "Usiivg our advanced 
VME/PLUS" architecture, we married Wf/i -denary application -speofic gale array fredvnoiogy 
wrth precision ftytn-inrun I board manuiarturwig,* said Wayne Fb«h«r, Direoorol Marketing 
'We're abte to offer more rurwrjona in a single board computer for (raa dollar*, thank* to 
VME/PLUS. IV CPU37 will serve the low-to-middir reaches of ihe demanding |tf|Ji-pcrfornuruT 
market ■qp wm i. Customers on select CPU ■peed* of either 1 6 7 or 25 MHa, onboard DRAM ol 
either 1 or (Mbytes, and say yes Of no to Ethernet' 

Standard Features Win Attiacl Mad-Kanaje, Embrace HlR)i End Applications 

TV moat basic CPU-37 is priced as low ai 13,990 but offer* features auociatrd wiiS 
boards nwtins; hundreds more. A fUDy ccnt^urd CPU-3? t» priced al SSJM and include* afl 
Futures described below. "Ws'rr bound to attract applications thai up until now have been 
too eost-anuJdve to move to a UOOO-Oaxd CPU.' said Fbchef "And. high-end buyers wtfj 
sec ihe CPU-37 as a prki- performance breakthrough " 

The CPU 37" » ranges «f features (rvHudr 

• 68090 microprocessor. 16.7 or 25 MHz operation; 2 E 2 PROM sockets 
o 68882 fluting point tia^u-cuor, 16.7 or 25 MHz operation 

• 1 or 4Mb}trs of DRAM, wait stairs al 16.7 MH*, 1 wall state al 25MHz 

• Real time clock with an board battel y backup 



3 serial port* for RS232/RS422 operation available via 9-pin fronl panel connec- 
tor*. First 2 ports can provide syncfruvn ou> operation based on the 68562 dual 
universal set is I communicattoj a controller chip; 3rd) port employs the 68901 
multi-function peripheral chip. 

1 Parallel I nterfa fa/Timer provides one 24-bit and four 8-bii limers 
SCSI interlace [via MB67031 host adapter chip) 
Floppy Disk Controller (SA46C) interface (via WD1772 controller chip) 
Optional Ethernet transceiver interface (from panel access) with 64 Kbyle oVJ 
catrd buffer based on the AMD 7990 LANCE chip 

VME/PLUS a rchi lecture embodied in PCA-001, a 135-pin CMOS gale array 
with 13 micron feature «'», The array consume* lea* lhan 120 rnJUiwjrK fea- 
tures remarkably low gate delays (J.4 ruj and it capable of an internal toggle 
frequency of 200 Mhz and externa! toggle frequency of 7D MHZ- Ttus array 
provides VMEbus interface and control functions including DSAOC genera- 
tion, bus error gettention. system reset, bus clock and all on. board control logic 
A32/24/16, D32/24/)6/S VMEbus niufetfalive Interface 
Slot 1 Control funcboiu (SV3CVOCX arbiter, etc.) 



Software Include* Fret CVS Kernel, wide 3rd Party Compatibility 

Enhancing the usefulness of the CPU-37 Is VMEPROM. a free rca|-0me operating *y»tem 
ken mI iha t also tndudc* a monitor and debugerr It is in&uUrd on the board in EPROM* 
ytciding operatfonaJ capaMhfy as soon as the CPU-37 b Installed on an active VcStpla ne 

VMEPROM b based on PDOS, a popular tenting fy*iwm Cram EyrinS Research Inotiiuie 
The CPU- J7 1> abo eompabbk wMh thud patty rtaMune aytlems and krmeb, indudtnfi 

UNIX oimP*lib*e produds Current uurd party ports tndude OS-9(MkTOwanf), VRTXa2 

(Ready Systrms). pSOS (Software Components Croup), VnWorks (Wind River Svsirms) 

■ndUniFLEXfJSq, 
Support lor EtherrKfs TOVJPpnjroctJb puouwd for iQW 

Price A. ArallablUty 

The CPU-37 has entered thr shipping plf-cfcm and is avauablr (or immeduik delivery 
Equipped M-ilh a t6,7MHi6KnOand««IDrnjthmprt>fti*or, IMP of memory, floppy Jft4 
SCSI controvert, the CPU-37X b prtrtd at S3.990 (1 9) A 2SMH2 vtnton with 4M8 ol 
memory, lloppy. SCSI and Ethrrnti controllers to prfced at 15^90 The product b shipped 
in a new *ORCE pacsiagr that rmpHuixr* stalk pictertton 

About Force Computer! 

The leading uuJepcTuurnt deslrnrr and manufacturer of VMEbus products. Force is 
now in Its sixth year The company has rocnpkeied 23 iwoitubve cjuarten of profitable 
opersnorL Force is headeua rtrred in Campbell, California wlih su*ddiaiiraln WotCer- 
many, France and the Uruled Kingdom Sales, service and product support tre pjovided 
on a worldwide bails 



c 



Classifieds gagga 



No Guarantees 



J 



MUSTANG -020 16Mhz wiUi 68881. OS9 Professional Package & C $2500. 

S+System with Cabinet, 20 Meg Hard Disk & 8" Disk Drive with DMAF3 Controller Board. 1X12 Terminal $2900. 

HARD DISK 10 Megabyte Drive • Seagate Model #412 $275. 
3-Dual 8" drive enclosure witli power supply. New in box. $125 each. 
5-Siemens 8" Disk Drive, $100 each. 

Tano Outpost n, 56K, 2 5" DSDD Drives. FLEX, MUMPS, $250. 

QUME QVT-102 terminal, like new, amber screen $250. or best offer. 

SVVTPC S/09 with Motorola 128K RAM, 1-MPS2, 1-Parallel Port, MP-09CPU Card- $490 complete. 

Turn (61S) 842-4600 M-F 9AM to 5PM EST 

*** 

Used Systems, Components A Software: 6809 GIMIX, ELEKTRA, 6800 GIMIX, SWTP A SSB, 5-1/4 DSDD Drives, Teimi- 
nals. 300-9600 Cassette 1/F & Backup Software. TSC, CSC, ETC. FLEX 2/9 Software FOR GIMIX, ELEKTRA & SWTP, 
OS9LI FOR ELEKTRA A HELIX. Credit Cards Accepted. Send SASE For List To George Ingram 26W482 NATIONAL ST., 
WHEAION, IL.,60188 or CALL 312-653-0360CST M-TH 7:3OPM-I0PM, S-S 7:30AM-10PM. 



66 Mcro Journal 



January '69 



57 



NEW! 

OmegaSoft Pascal for the 68020/68881 



P20K Is a Pascal package thai will generate code lor all ol the 68000 
series processors, including the 68881 coprocessor P20K at run on any 
68000 series computer running the OS- 9/68000 (Microware) or PDOS 
(Eyring Research) operating systems »ith 512K or mere free memory 

The base package (P20K-B) includes the Compiler. Relocatable Macro 
Assembler. Linking Loader, Screen Ed I or. Pascal Shell. Linkage Creator. 
Host Debugger. Configuration manager. Installation program, and Patch 
utility A ne« feature in this compiler Is the ability to either (ink In the parts 
ol the runtime needed by the program, or to use trap handlers lor runtime 
access, to share the runtime library bet wean programs. Complete operating 
system interface is also Included using pascal procedures and functions. 
The host debugger allows debugging at both the Pascal and assembly 
language levels of programs that run on the host operating system. Price 
lor the base package Is $575. 



The runtime source cede option (P20K-R) is available lor Jwo and includes 
source code lor the operating system interface routines as well as pascal 
runtime. 

The Utility source option (P20K-S) Is available lor 1275 and Includes source 
code tor the Screen Editor. Pascal Sliell. Host Debugger. Patch utility, and 
Configuration manager 

The Target debugger option (P20K-T) is $225 and Includes object and 
source code This program allows Pascal level and assembly level 
debugging In a system without operating system, by using a aerial link 
connected to the host computer 

Prices do not include shipping charges. Master-Card and Visa accepted. 
OmegaSoft Is a registered trademark of Certified Software Corporation. 



Gespac SA. 3. Chemin des Aula. CH1226, 
Geneva/Plan-les-Ouate*. Switzerland 
TEL 022-713400, TLX 429989 

Elsoft AG. Zefgweg t2. CM- 5405 Baden-Dlll-l. 
Switzerland. TEL 056-833377. TLX 828275 



RCS Microsystems Ltd . 14! Uibridge Road. 
Hampton HIM. Middlesex. England. 
TEL 01-9792204. TLX 8951470 

Byte Stud o Barken, Be tenwalt 14, D 4280 Borken. 

West Germany 

TEL 0286t. 2147. TLX 813343 



Eltec EleMronik GmbH. Galileo- Galilei- StraBe, 
6500 Maim 42. Postfadi 65. West Germany 
TEL 06131-50031. TLX 4187273 

PEP ElektrorNk Systeme GmbH, Am Klosterwal d 4 
0-8950 Kautbeuren. West Germany 
TEL 06341-8974. TLX $41233 



CERTIFIED 

SOFTWARE 

CORPORATION 



P.O. BOX 70, RANDOLPH, VT 05060 USA 
TELEPHONE: (802) 728-4062 
FAX: (802) 728-4126 



a lEreraiBniuagigJEBTiMBniaBiBiSM^ 



FLEX™/SK-DOS VMS-DOS- 
Transfer Utilities 

For 68XXX and CoCo* OS-9- Systems 

Now READ - WRITE - DIR - DUMP - EXPLORE 
FLEX, SK-DOS & MS-DOS Disk 

These Utilities come with a rich set of options allowing the 
transfer of text type files from/to FLEX & MS-DOS disks. 

CoCo systems require the D.P. Johnson SDISK utilities and OS-9 and two 
drives of which one must be a "host" floppy. 

CoCo Version: $69.95 68XXX Version $99.95 



S.E. Media 



615 842-6809 



PO Box 849, HixsonJN 37343 
MC/Vlsa 



'MimMMmmM&&SMSJSMSMS!SMiM!3MSI&SS[MS$m^!^M&M>S&&iMM 



§ 



B 



58 



January '89 



68 Micro Journal 



r 



"\ 



SK*DOS*/68K 

Read the fine print to see what's in SK*DOS/68K: 



D Full DOS documentation plus on-line help □ Multiple directories 

□ User-installable device drivers D Install up to 8 different I/O 
devices D Keyboard type-ahead □ Print-screen D Virtual (RAM) 
disk □ Disk cache D Up 10 10 drives D SW" or 1W floppy drives D 
Hard diives to 64 megabytes each □ I/O redirection to drives or I/O 

□ Time/date stamping of files D File or disk write protect (even 
hard disk) G Batch files D Support for 68000, 68010, 68020 D 
Monochrome or color video board support D Read and write MS- 
DOS disk files O 6809 Emulator D Powerful utilities such as copy-by- 
date, undelete, show differences between files, prompted delete, text 
file browse, and more • all included O Simple Basic included □ Fast 
assembler included □ Line editor included □ User support via 
newsletter and BBS □ Available software: C compiler, full Basic, 
screen editors, disassemblers, crcEs-assemblcrs, spelling checker, text 
formatter, music editor, hard disk manager, ROM-based debugger, 
modem communications programs, etc. More compilers coming. G 
(Some features may not be implemented in all hardware manufac- 
turers' implementations.) 

Individual copies of SK*DOS/68K are $140; less in 

K quantity or when bundled with hardware. Send 
for our 6809 / 68K hardware and software 
catalog. Also available as part of our 
hardware/software educational course. 
Software Systems Corp. 
P. O. Box 209J 
Mt. Kisco, NY 10549 
(914)241-0287 

BBS (914) 241-3307 Fax (914) 241-8607 




»*••*••••• 




Apple 

Macintosh- 

S Users 



Save over a $1,000.00 

on PostScript 

Laser Printers! 

Faster - Finer Quality 

than the original Apple 

LaserWriter! 

New & Demos 

Cartridges-new-rebuilts 

-colors- 



in Chattanooga Calls 
Kl 5 842-1600 

QMS-Authorized 



Data-Comp Division 






SOFTWARE 



68000 C CROSS-COM1ULER 

tun ■ ixma.Msoos.VMX.xtmx iommct OMiri 

AcafCJ X*R C tapage, prowl WWUU RacmNc t cudr 
IKlueto6H0]Oenn«ncmhkr. fchnnci prutttfed fen SKDOS. he I may be modified 

CROSS-ASSEMBLERS WITH MACRO CAPABILITIES 

each ist.nj:x.os9.i'mru:x.mitosx , 'tix.%xous.xEMX hum aiusioo 

SpctiSr l*Jl.6W3. 6801/1 !. BUCK. «>5. 6809. 7Jt. Z«0. SOM. 8OT1. HJJ5. 6M>)0. 13XX1 
Mudnup creti-tsarrnbkei m C. »nll haFIAinfcaaJ BUlejca Source* (a» arMiburvd SX> each. 5100 for 
!. $)O0l»adl 

CMODEM TELECOMMUNICATIONS PROGRAM 

tlM.itSOOS£xOOS.VmXJFtS.XjOStJtENIX.VNIHjliX OHJECTONI.r: EACH ISO 
Memr-drivee *i» Icnouxl mode file nuIs.MKMI. XONXOfF.ar 

SUPER SLEUTH DISASSEMBLERS 

Eun I9?ru:x t touts* iteovmfLEX owecnymx- each ste nj-xmt.coco 

l/umclj vely renorfle wwc tea *aa. arnh labeb, <nr hide* im(, Emory cdtbef 
Srjxify 6K0U. I J . O ji ,<MM02 vrumi « /MVWMii^ uriwai 
COCODOS>mkhle>>i6«00.IJ.).«JI.W6W2 mvn (not 2X\VR>J>) only 
MOID irnoi «IO>-FLF.X,OS»,IJNin>'X.MSUaS,ltNIX^KUOt>.XKNX 

DEBUGGING SIMULATORS FOR POPULAR 8-BIT CPUS 

ea cu tfs-FiJSt SIM-OS9 u».VNiru:x 0ajKcr.oNi.x each sst.coco nut, c<ko 0S9 

luenrvnl y simulate !■*•**■»*. rncaadD duaaacmbly fvexaasc. Dina/y editing 
Specify fi»«0WI.(l4)6»li.6Wl.tS<X>O5<'iinly. e*)flIX<xily 

ASSEMBLER CODE TRANSLATORS FOR 6502. 6800/1, 6809 
DUuUW vufuix tm.ost ut.vmri.EX 

ttOOII to MOT A MOT tt (xn.lwt fjd.fl ex nSOS9 Oily U0- VNIflfX 

FULLSCREEN XBASIC PROGRAMS .lib nn« romrol 
AVAILABLE FOR H.EX. U-MFI.EX. AW) MSDOS 



DwpUy Qwnuw I Ooewiuoier 
Mailie* LiaSytWm 

I:...- wah MRP 

Ttbull Ran Spread ]6cct 



$50 */*larte. S25 widluut 

4100 w/souree. JW »id»w 

SlOOw/Kjon.. SS0*nre« 

HOC w/ieuTK. ISO.ilfiw 



DISK AND XBASIC UTILITY PROGRAM LIBRARY 

tStfLEX tltUNiri.EXIUSOOS 



fcrtl did! reenrx aon dirtx*»; . matruAin mutt calaaoR.do diu* mu 
BASIC rug**" ■ ««' BASIC pnjefirti . etc roe r-"LEX venaan include 



iCToqoeWfC seme or Bjl 



PROFESSIONAL SERVICES 

FOR THE COMPUTING COMMUNITY 



CUSTOMIZED PROGRAMMING 

W** will c»uomL»f any of the v*v% mmt deaenbrd m thu ad-tmiemeni or in our bmchwr for 
qiccutlutad cuik*fw» «ft or lo covet «■* p>nxe»oa; uV charge for suxfi euaiurnuaiion drrxoib 
upon ihe mu1( lablt liy of the ayrAit^-^rmt^ 

CONTRACT PROGRAMMING 

Wc «vill out ncwpn^imi or mudiiy -eitniru (nocrvru on • cwnniU &oms.« ucrncc *c h#vc 
pmvulcd for aver ttveMp ftm, dw crxnpu*r* on wIvkN wt ittvt performed contract pvucnramirf 
utctudc moM popular «w*V4* o/ nuirtfrsfliri. inv Iwlin^ IHM B*™**fc». Uiu»«c. Honey *xU. most 
popubf modeb of mint«ornpiB£r-|. includiAS DEC, IBM. DO, MP. ATAT, maj mod poj^Lu 
brands of mown puun. inclwdini t#X¥ 1 , 68*9. Z»0. 6M2, <«(»•, au*V nwfl •pprtT»ua? 
teogtiigo and oiffn uns tyiw«»«, db tjUcmt n>isi«g in mc from Urge it k*K7^,in«tiQn« m 
nngk tkaurf conODlfat: Aec<Wlcror0o'incl (■Ptjnviw'itnS « uuall y by ihr >\w or byihcuifc- 

C0NSULTIN<; 



We otttr i wife rtngc of wu«"ir" ml locftruc*) 
t7unmf ind dcjlpt, on My topic reUlcfl 10 
baaed ujun uim. ir»vel. aAd eApsnaBv 



lavrec*. incloarni) untruvi. advice, 
r. the crwjc for caanluatf i» nvwullr 



Computer Systems Consultants Inc. 



UM Law Lane 

Copycn. Coorfta VSUfft 

<4O4>481*170 . (40D-UU 1717 



li L mi «BiT«n Mom t«|rw . ■«• jn* ■■if . , OS. 44 llM 114 ^| 

» .-I*. ,:s,#jM*Mia. wn.i|irj ,Aii...i. l ,,.M| l .i.«. n i<t 



63 Mcio Journal 



January '69 



59 



Clearbrook Software Group (604)853-9H8 



CSG IMS is THE full featured relation- 
al database manager for OS9/OSK. 
The comprehensive structured ap- 
plication language and B +Tree index 
structures make CSG IMS the Ideal 
tool for file-intensive applications. 

CSG IMS for CoCo2/3 OS9 LI/2 (single user) $169.95 

CSG IMS for OS9 L2 or 68000(mul« user) $495.00 

CSG IMS demo with manual $30 




SERINA - System Mode Debugger for OS9 L2 

allows you to trace execution of any system- module, 
set break points, assemble and disassemble code and 
examine and change memory. 

Requires CoCo3 or Gimlx II, OS9 12 & 80 col. terminal $139.00 



MSF - MSDos File Manager lor C0C0 3/OS9 Level 2 
allows you to use MSDos disks directly under OS9. 

Requires C0C0 3, OS9 12. SDISK3 driver $45.00 



ERINA - Symbolic User Mode Debugger for OS9 
lets you find bugs by displaying the machine state and 
Instuctlons being executed. Set break points, change 
memory, assemble and disassemble code. 

Requires 80 column display, OS9 L1/2 S69.00 



Shipping: N. America - $5, Overseas - $10 
Clearbrook Software Group P.O. Box 6000-499, Sumas, WA 98295 

OSS It ft Iradtmtffc of Mlcrowira Syittmi Corp., MSOot It i Iradamlrfc of Microsoft Corp. 



SPECIAL 

ATARI™ 

& 

OS-9™ 



NOW! 

If you have either the 

Atari 520 or 1040 - 

you can take 

advantage of the 

"bargain of a lifetime" 

OS-9 68K and BASIC 

all for the low, low price of: 



$150.00 

Call or Write 

S.E. AAedia 

5900 Cassandra Smith Rd. 

Hixson, TTSI 37343 

<bl5 842-4601 



f~ 



"> 



ATARI & AMIGA 
CALL 

As most of you know, we are very sensitive to your 
wishes, as concerns the contents of these pages. One of 
the things that many of you have repeatedly written or 
called about is coverage for the Atari & Amiga™ series of 
68000 computers. 

Actually we haven't been too keen on those systems 
due to a lack of serious software. They were mainly 
expensive "game-toy" systems. However, recently we are 
seeing more and more honest-to-goodness serious soft- 
ware for the Atari & Amiga machines. That makes a differ- 
ence. 1 feel that we are ready to start some serious looking 
into a section for the Atari Sc Amiga computers. Especially 
so since OS-9 is now running on the Atari (review copy on 
the way for evaluation and report to you) and rumored for 
the Amiga. Many of you are doing all kinds of interesting 
things on these systems. By sharing we all benefit. 

This I must stress - Input from you on the Atari 
& Amiga. As most of you are aware, we are a 
"contributor supported" magazine. That means 
that YOU have to do your part. Which is the way it 
has been for over 10 years. We need articles, tech- 
nical, reviews of hardware and software, pro- 
gramming (all languages) and the many other fac- 
ets of support that we have pursued for these many 
years. Also I will need several to volunteer to do 
regular columns on the Atari & Amiga systems. 
Without constant input we can't make it fly! So, If 
you do your part, we certainly will do ours. How 
about it, drop me a line or give me a phone call and 
I will get additional information right back to you. 
We need your input and support if this is to succeed! 

DMW 



^. 



60 



January '89 



68 Micro Journal 



THE 6800-6809 BOOKS 
..HEAR Y£. HEAR 



OS-9" 
User Notes 



By: Peter Dibbfe 

The publishers of 68' Micro Journal are proud to sake 
available the publication o( Peter Dibbles 

os9 uses ions 

Information for the BtCWER Co the FRO. 
tegular or CoCo 059 

Using 0S9 

HELP, HINTS, PROBLEMS, REVIEWS, SUGGESTIONS. COMPLAINTS, 

0S9 STANDARDS, Generating a New Bootstrap, Building a 

new System Disk, 0S9 Users Group, etc. 

Program Interfacing Co 0S9 

DEVICE DESCRIPTORS, DIRECTORIES, "FORKS", PROTECTION. 
"SUSPEND STATE", "f'lPES - , "INPUT/OUTPUT SYSTEM", etc. 

Programming Language a 

Assembly Language Programs and Interfacing; 8«8lc09, C, 

Pascal, and Cobol reviews, programs, and uses; etc. 



Diaka Include 
Vo Cyplng all the Source UaClnga Id. Source Code and, 
where applicable, assembled or compiled Operating 
Programs. The Source and the Discussions in the 
Columns can be used "as is", or as a "Starting Point" 
for developing your OWN more powerful Programs. 
Programa sometimes use multiple Languages auch as a 
ahort Assembly Language Routine for reading a 
Directory, which la then "piped" to a Baslc09 Routine 
for output formatting, etc. 



BOOK $9.95 

Typeset — w/ Source Listings 

(3-Hole Punched; B x 11) 

Deluxe Under .... SS.SO 




FLEX™ 
USER NOTES 

By: Ronald Anderson 

The publishers of 68 MICRO JOURNAL are proud to 
ke available the publication of Ron Anderaon'a FIJU 
DSKR MOTES, in book form. This popular monthly column 
has been a regular feature in 68' MICRO JOURNAL SINCE 
1979. It has earned the reapect of thousands of 
6B MICRO JOURNAL readera over the years. In fact, 
n's column has been described as the 'Bible' for 6BXX 
ultra, by some of the world's leading microprocessor 
prof eaalonala. The most needed and popular 68XX book 
available. Over the years Ron'a column has been one of 
the most popular in 6B MICRO JOURNAL. And of courae 
6B MICRO JOURNAL is the moat popular 6BXX magazine 
published. 

Listed below are a few of the TUT filea included In the 
book and on diskette. 

All TEXT ties in Ihe book are on the disks 



LOGOC1 File load program to of'set memory — ASM PIC 

MEMOVE C1 Memory move program — ASM PIC 

DUMP C1 Pnnler dump program — uses LOGO — ASM PIC 

SUBTEST CI Simulation ol 6800 code to 6609. show differences — ASM 

TERMEM C2 Modem input lo disk (or other port input to disk) — ASM 

M C2 Output a file to modem (or another pen) — ASM 

PRINT C3 Parallel (enhanced) pnnler driver — ASM 

MODEM C2 TTL oulpul to CRT and modem (or other pot) — ASM 

SCIPKQCl Scientific math routines — PASCAL 

U C4 Mini-momior. disk resident, many useful functions — ASM 

PRINTC4 Parallel pnnler dnver. without PFIAG — ASM 

SETC5 Set printer modes — ASM 

SET8AS1 C5 Set pnnler modes — A-BASIC 

NOTE: .C1..C2, etc. -Chapter 1, Chapter 2, etc. 

••Over 30 TEXT flies Included is ASM (assembler)-PASCAL- 
PIC (position independent code) TSC BASIC-C, etc. 



All Source Listings on Disk 

1-8" SS, SD Disk $14.95 

2-5" SS, DD Disks $24.95 



Book only: $7.95 + $2.50 S/H 
With disk: 5" $20.90 + $2.50 S/H 

With disk: 8" $22.90 + $2.50 S/H 

Shipping & Handling $3.30 pet Book, $2.30 pej Disk, set 

Foreign Orders Add $4 50 Surface Miil 
or $7 00 Air Mail 

If paying by check - Please allow 4-6 weeks delivery 

* All Currency in U.S. Dolltrs 

Continually Updated In 68 Micro Journal Monthly 

Computer Publishing Inc. 



5900 Cassandra Smith Rd. 
Hixson, TN 37343 



FLEX ts a trademark of Technical Systems Consultants 
"0S9 is a tradenark of Mlcroware and Motorola 
*68' Micro Journal la a trademark of Computer Publishing Inc. 



(615)842-4601 

Tetex 5106006630 



68 Micro Journal 



January '89 



61 



^v 



!!! Subscribe Now !!! 
68 MICRO JOURNAL 

OK, PLEASE ENTER MY SUBSCRIPTION 

Bill My: Masiercard|~l VISA|~~| 
Exp. Date 



Card# 



For I Year 



2 Years 



3 Years 



Enclosed: $_ 



Name 
Street 
City 



State 



Zip 



Country 



My Co m puter Is: 



Subscription Rates 



U.S.A.: 1 Year $24.50, 2 Years $42.50, 3 Years $64.50 
*F«reign Surface: Add $12.00 per Year to USA Price. 
♦Foreign Airmail: Add $48.00 per Year to USA Price. 

♦Canada & Mexicc: Add $9.50 per Year to USA Price. 

*U.S. Currency Cash or Check Drawn on a USA Bank ! 



68 Micro Journal 

5900 Cassandra Smith Rd. 
POB 849 

Hixson.TN 37343 

Telephone 615 842-4600 
Telex 510 600-6630 




^ 



J) 



Reader Service Disks 

Bisk- I Fileson, Miro'eat, Minicopy .Minimis. "Lifetime. "Poetry, 

•♦Foodlisi. "Diet. 
Disk- 2 Diskedil w/ inst.i fixes, Piime, •Pnnod, "Snoopy, 

"Football, "Hexpawn,"Lifetime. 
Disk- 3 Cbug09, Seel. Scc2. Find. Table2, Intcxi, Disk-exp. 

•Disksave. 
Disk- 4 Mailing Program, 'Finddai, 'Change, •Tesidisk. 

Disk- S 'DISKFDC 1. •DISKFDC 2. "LETIT-R, "LOVES1GN, 

"BLACKJAK, "BOWLING. 
Disk- 6 "Purchase Order, Index (Disk file indx). 

Disk- 7 Linking Loader, Rload, Darkness. 

Disk- 8 Cncst, Lanpher (May 82). 

Disk- 9 Daiecopy, Diskfix9 (Aug 82). 

Disk- 10 Home Accounting (July 82). 

Disk-11 Dissembler (June 84). 

I31.sk- 12 Modem68 (May 84). 

Disk- 13 'iniunfaS, Testmf68,«Cleanup.«Dskalign.Hclp,Daic.Txl. 

Dlsk-14 Mnil, 'Test, •Terminal, 'Find. •Diskedil, Inil.Lib. 

Dlsk-lS Modem9 + Updates (Dec. 84 Gilchrist) to Modcm9 

(April 84 Commo). 
Disk- 16 Copy Txi, Copy.Doc.Cat.Txt.Cat.DOC. 

Disk- 17 Match Utility, RATBAS, A Basic Preprocessor. 

Disk-Id Parse. Mod, Size.Cmd (Sept. 85 Armstiong),CMDCODE, 

CMD.Txl (Sept. 85 Spray). 
Disk-19 Clock, Date, Copy, Cat. PDELAsm &. Doc.. Errors.Sys, 

Do, Log. Asm & Doc. 
Disk- 20 UNIX Like Tools (July & Sept 85 Taylor A Gilchrist). 

Diagon.C, Gtep.C. LS.C, FDUMP.C. 
Dlsk-21 Utilities & Games - Dale. Life, Madness, Touch, Goblin, 

Slarshoi, & 15 more. 
Dlsk-22 Read CPM & Non-FLEX Disks. Fiaser May 1984. 

Dlsk-23 ISAM, Indexed Sequential file Accessing Method s, 

Condon Nov. 1985. Extensible Table Driven. Language 

Recognition Utility, Anderson March 1986. 
Disk-24 68' Micro Journal Index of Articles & Bit Bucket Items 

fiom 1979 - 1985, John Current. 
Disk-2S KERMTr for FLEX derived from the UNIX ver. Burg 

Feb. 1986. (2)-5" Disks or(l)-8" Disk. 

l)isk-26 Compacla UniBoard icvicw, code & diagiam, Burtiaon 

Match '86. 
Disk-27 ROTABIT.TXT. SUMSTEST.1XT, CONDATA.TXT, 

BADMEN.TXT. 
Dlsk-28 CI 82 limulator, bit mapped. 

Disk-29 "Star Trek 

Disk-30 Simple Winchester, Dec. '86 Green. 

Dlsk-31 "• RcadAViiie MS/PC-DOS (SK'DOS) 

Dlsk-32 Hcir-UNIX Type upgrade -68MJ 2/87 

Dlsk-33 Build the GT 4 Terminal - 68MJ 1 1/87 Condon. 

Dlsk-34 FLEX 6809 Diagnostics, Disk Drive Test, ROM Test, 

RAM Test - 68MJ 4/88Koipi. 
NOTE: 
This is a reader service ON LYI No Warranty is offered or implied, they are 
as leccived by 68' Micro Journal, and arc for reader convenience ONLY 
(some MAY include fixes or patches). Also 6800 and 6819 programs are 
mixed, as each is fairly simple (mostly) to convert to Ihe other. Software is 
available to cross-assemble all. 

• Denotes 6800 - •• Denotes BASIC 

••« Denotes 68000 - 6809 no indicator. 



8" disk $19.50 
5" disk $16.95 



Shipping & Handling -U.S.A. Add: - S3.50 
Overseas add; S4.50 Surface - S7.00 Airmail 

68 MICRO JOURNAL 

590* Cassandra Smith Rd. 

Hixson.TN 37343 

(615) 842-4600 - Telex 510 600-6630 




■ 


H^ _ ^^a^^»^^^« 


1 




VposterCard 




1 


kfc- _->a^aW_- -^ 


J 



62 



January '89 



68 Micro Journal 



K-BASIC™ 



The Only 6809 BASIC to Binary Compiler for OS-9 

FLEX or SK*D()S 

Even runs on the 68XXX SK*D()S Systems* 



............. - N 

J Hundreds Sold at \ 
| Suggested Retail: § 

| $100.00 i 



• 6809 - 0S-9™ users can now transfer their FLEX™ 
Extended BASIC (XBASIC) source files to OS-9. com- 
pile with the OS-9 version and run them as any other 
OS-9 binary "CMD" program. Much faster than BASIC 
programs. 

• 6809 - FLEX users can compiler their BASIC source 
files to a regular FLEX *.CMO" file. Much faster execu- 
tion. 

• 68XXX - SK'DOS™ users running on 68XXX systems 
(such as the Mustang-08/A) can continue to execute 
their 6809 FLEX BASIC and compiled programs while 
getting things ported over to the 68XXX. SK'DOS 
allows 6809 programs to run in emulation mode. This is 
the only system we know of that will run both 6809 & 
68XXX binary files. 

K-BASIC is a true compiler. Compiling BASIC 6809 pro- 
grams to bnary com mand type programs. The savings 
in RAM needed and the increased speed of binary 
execution makes this a must for the serious user. And 
the price is now RIGHT! 

Don't get caught up in the "Learn a New Lan- 
guage" syndrome - Write Your Program in 
BASIC, Debug it En BASIC and Then Compile 
it to a .CMD Binary File. 



For a LIMITED time 
save over 65%... 
This sale will not be 
repeated after it's 
over! * 

SALE SPECIAL: 

$69.95 



SPECIAL 

Thank-You-Sale 



Only Jrom: 



c 



S.E. Media 



p 



i 



9M0 Cassandra Smith Rd. 

Hlxsoo, Tn 37343 

Telephone 61 S 842-6809 

Telex 510 60O6630 



A Division of Computer Publishing inc. 
Over 1,200 Titles - 6800«Ba»68arjo 



* K-BASIC writ iwi infer 58XXX SK'DOS n onultftn nwfc for (he 6809. 

Piice oiyxt to chngc wihcu nna. 



68 Micro Journal 



January '89 



63 



PT-68000 SINGLE BOARD COMPUTER 

The PT68K2 is Available in a Variety of Formats 
From Basic Kits to Completely Assembled Systems 



BASIC KIT (8 MHZ) - Board. 66000, 
HUMBUG MONITOR * BASIC in ROM, 
4K STATIC RAM. 2 SERIAL PORTS, all 
Components $200 

PACKAGE DEAL - Complete Kit with 
Board 68000 10 MHZ. SK'DOS, 512K 
RAM. and all Necessary Parts $575 

ASSEMBLED BOARD (12 MHZ) 
Completely Tested, 1024K RAM. 
FLOPPY CONTROLLER. PIA, SK'DOS 
$899 

ASSEMBLED SYSTEM- 10 MHZ 

BOARD. CABINET POWER SUPPLY, 
MONITOR ♦ KEYBOARD, 80 TRACK 
FLOPPY DRIVE, CABLES $1299 
For A 20 MEG DRIVE, CONTROLLER 
and CABLES Add $295 



PROFESSIONAL OS9 



"«KTX>S b a Trademark ot 

STAR-K SOFTWARE SYSTEMS CORP. 

"OSB b a Tradarart d Mlcrowaia 



$500 





UlililB 


[■■ ■ ■! 


h\ ?m 



FEATURES 

MC68000 Processor. B MHZ Clock (optional 

10,12.5 MHZ) 

51 2K or 1024K ot DRAM (no wail stales) 

4K of SPAM (6116) 

32K.64K or 128K ot EPROM 

Four RS-232 Serial Ports 

Floppy disk controller will control up to lour 

5 1/4". 40 or 60 track 

Clock with on-board battery 

2 - 8 bit Parallel Ports 

Board can be mounted in an IBM type PC/ 

XT cabinet and has a power connector to 

match the IBM type power supply. 

Expansion ports - 6 IBM PC/XT compatible 

I/O ports The HUMBUG- monitor supports 

monochrome and/or color adaptor cards 

and Western Digital Winchester interface 

cards 



PERIPHERAL TECHNOLOGY 

1460 Terrell Mill Rd., Suite 870 
Marietta, Georgia 30067 

404/984-0742 Send For Catalogue 

VISA/MASTERCARD/CHECK/C.O.D. For Complete Information On All Products 






(F 



DATA-COMP 



SPECIAL 



Heavy Duty Power Supplies 




=^ 



Fa A Rented Ume our HEAVY DUTY SWTTOeNG POWER SUPPLY. These 
prices are less than 1/4 the normal price for these high quality units. 



BRAND NEW units. Note that these 



r 



Make: BoEchert 

Sbc: 10.S x 5 x 15 inches 

Including heavy mounting bracket and heafcink. 

Raring; in 1 10/220 vote ac (strap change) Out: 130 wans 

Output: +5v ■ 10 amps 
+12v - 4.0 amps 
+12v . 20 amps 
■12v -05 amps 

Mating Onnaxw. Terminal strip 

Load Reaction: Airturmix. sh»t circuit recovery 

SPECIAL: $59.95 esdi 

2 or more $49.95 each 

Add: 57.50 each S/M 



V 



r 



Make: Bcethert 
Size: 10.75 x 6.2 x 2J25 inches 

Rating: 110/220 ac (strap change) Out: 81 watts 

Outputs: +5v . 8.0 amps 
+12v -24 amps 
+12v - 1A amps 
+12v - 2.1 amps 
-12v - 0.4 amps 

Mating Ovraaos: Molex 

Load Reaction: Aiflanalic short encuil recovery 

SPCOAL: $49.95 each 

2 or more $39.95 each 

Add S7J0S/He»A 



J < 



^ 



S9O0 Ckaasndrs Smith Rd, tfjacn, Try 37343 Telephone 615 842^4600 



Telex 510 6CXW630 



J 



SJ 



January '89 



68 Micro Journal 




Mj^^the — llStaiV' 



Now Offenng *FLEX" (2 Versions) 
AND 'STAR-DOS PLUS+ '" 




For Otttmrtng Call 

(615)842-4600 



FROM - DATA-COMP, C.P.I. 



A Family of 100% 68XX Support Facilities 

The Folks who FIRST Put FLEX" on 

The CoCo 



vH 






t^*>* 



&.:> 



* 



p^^r^ 



C o1 



«* e 



**%P 



^*" o* 1 



M 



STAR DOS PLUS + 

• Functions Same as FLEX 

• Reads • writes FLEX Disk* 

• Run FLEX Programs 

• Just type: Run 'STAR DOS" 

• Over 300 utilities & programs 
to choose from 



f 


TSC Editor 




NOW $35.00 


L 


y) 



PLUS 

ALL VERSIONS OF FLEX & STAR-DOS 

+ Read-Write-Dir RS Disk 
+ Run RS Basic from Both 
+ More Free UtJities 




INCLUDE 

+ External Terminal Program 
+ Test Disk Program 
+ Disk Examine & Repair Program 
+ Memoty Examine Program 
+ Many Many More!!! 



TSC Assembler 




(bgtMOO 


L 


NOW $35 OO 

1 



CoCo Disk Drive Sgsleuis 



2 TH1NLINE DOUBLE SIDiO DOUBLE DENSITY DISK DRIVES 
SYSTEM WITN FDUEE SUCI-L* .CAIINtT, 01SI OllVE CARLE. JiH 
NEW DISK CONTROLLER JP0-CP VJTH J-OOS.RS-DOS OPERATINC 
SYSTEMS. |4*«.») 

• Spiel (y What CONTROLLER You Want JAN, or RADIO SHBCX 

TMINLINE DOUBLE S1DE0 
DOUBLE DENSITY *0 TRACKS 



MK VPCSAOi 

FOR C.0,E, P, AND COCO II 
RADIO SHACK BASIC I. 2 
EAD10 SHACK DISK BASIC 1.1 



Verhjhm Diskettes 



Sinftlf Sldad Doubl« DtDtity 
Deubl* Sided Double Deoelty 



Cooli oilers 



JtN JPO-CP WITH J-0OS 
WITH J-OOS, KS-OOS 
RADIO SHACK ] . I 

RADIO SHACK Diik CONTROLLER 1.1 



Disk Di ive Ciu!>-'> 



Ceble for One Drive 
Cable for Two Drive* 





DISK OltVE CABINET POl A 


III*. as 


SINGLE (WIVE 




DISK DRIVE CAEINET POl TWO 




TK1NLINE DRIVES 


} 14.00 


nirruj 


} 14.00 


EPSON U-BO 




EPSON HX-70 




EPSON KX-100 


•139. 95 


ACOMoaiE* rot ifboc 


$119. *» 




tiM.aj 


61*6 2E SEEIAL BOARD 


81*9 32K EXPAND TO I2BK 




EPSON MJ-M-UO KIIMNS 


413*. aj 


EPSON LX-80 ElEtONS 




TEACTOE UNITS PO« LX-BO 




CABLES 4 •THE* IHTCK/ACKS 




CALL POR PRICING 


i la.tj 




i 24. as 





I 29.95 



t 24. as 
i 24. as 



* 4».»5 

t ta.as 



B2M.9J 

•us.aj 
$»*i.*i 



JI49.95 

» s.as 



DATA-COMP 

5900 Cassandra Smith Rd 
Hixson. TN 37343 




C3| 


SHIPPING tS* 

f^:^ d ^" s .| (615)842-4600 

n(H. $2.50 'Of OtoWring 

Telex 5106006630 




s 



An Ace of a System in Spades! The New 

MUSTANG-08/A 



I 

I 

I 

I 

I 

I 

I 

l m 

I 

I 

I 

I 

I 

I 



I 
I 
I 



Now with 4 aerial ports standard At speed Increase to 12 Mhz CPU + on board battery 
backup and Includes the PROFESSIONAL OS*9 package - Including the $500.00 OS-9 

C compUerl This offer wont last forever! 



NOT 128K, NOT 512K 



tFULL 768K No Wait RAM 



Now even faster! 
with 12 Mhz CPU 



I 



The MUSTANOOF* system took mwy hand from al 
I other 68006 syaema we tested, naming OS-9 6BKI 
I The MU5TANG-09 Mudes OS936K™ and** Peter 
| SJartOi StVDOS™ . SKDOS is a single user, siogfe tasteng 
| system that takes up where *R£X~ left off. SKDQS is 
| actualy a efiXXX FLEX type system (At* a 7SC product; 



C OnnpQe time OS« 68K. Hart Diak^ 
MJ5TANQ4B 8 Ms CPU Ofrfn 32«K 

Other poeuhr B009 tytam 1 nil <- 05 sac 

MUSTANM20 Omtn-Zlsae 



J? 




cw 


MC6800B 


RAM 


768K 




NoWstSaaa 


PORTS 


4-RS232 




2-8blParaU 


CLOCK 


MK48T02 


EPR0M 


16K33(arB4K 


aoppv 


W01772 


WFO DSK 


M^fee Rwt 



12 Mhz 
2S6K Chfce 

UC6SB1 QUART 
MCS21 P1A 

FfeeJ Tims Ob* Bst BAJ 

StMDmw 
WDHXB Bead 



| System Includes OS-9 68K or SK-DOS - Your Choice 



Sperifieations 

I 
I 
I 
I 

I 
I 
I 
I 

}lf Now more serial ports - faster CPU ' 
Battery B/U - and $850.00 OS^9 Profes- 1 
,. slonal with C compiler included! 



*$400.00 



J 



See Musfang-02 Ad • page 5 
for trade-in delate 




MUSTANG-08 



LOOK 



Ssinls 



cs-9 em.. 

QS-9 68K. 



32 ha Reiner 

.18.0... 9.0 
. .9. 8... 6. 3 



r hi l; v 
raglatar long I; 

for (bO; I < 090999; «-ff); 



a 25 Megabyte 
4^ Hard Disk System 

$2,398.90 

Complete with PROFESSIONAL OS-9 

includes the $500.00 C compiler, PC 

style cabinet, heavy duty power supply, 

5' DDDS 60 track floppy, 25 MegByte 

•^ Hard Disk - Ready to Run j 

UnSte other 68006 systems there are several significant 
dKarorcBS. The MUSTANG-08 is a M 12 Megahertz system. The 
RAM uses NO wait stales, this means fid bora MUSTANG type 
performance. 

Abo, albwrg tor addressable HDMPROM the RAM is the 
maximum slowed tor a 68008. The 68008 can only address a 
total of 1 Megabytes of RAM The design afbws al the RAM 
apace (tor al practO purrmrf) to be utilized. What Is ret 
avalabte to the user is requhaJ and reserved for the system 

A RAM daK of 480K can be aaaiy corfgurad. tea*? 288K 
free for crograrrvsyaterr. RAM apace. The RAM OtSK can be 
configured to any son your application raqurea (system must 
have 128K in addition to Is other retirements) Leaving the 
lemaMer of the ongina* 768K tor pmgram use. Sutraer* 
source included (oVtvere, etc.) 



kotTSC 



MUSTANOMbta 



r 



Data-Comp Division 




A Oecade of Quality Service"^ 

7 X^ p/ Systems World Wkfe 

Computer Publishing, Inc. 5900 Cassarda Sfttfi Road 
Telephone 615 842-4601 • Telex 510 60O&3D rfasori Tn 37343 



^ 



Trxae *tih SWTC r*<ten*ry RfX 5' - OJ for %^dd No.